Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
C# kodu Delphi ye çevirme
#1
Merhabalar ,

Öğrenci kod oluşturma diye bir algoritma var.Aslında basit ama ben beceremedim. 
Özellikle String alanı Char alana C# .ToCharArray(); ile çevirirken delphi ile herşey karman çorman oldu.
Bunun dışında da en çok takıldığım yer GenerateRandomString alanında Buffer, Random.NexBytes dahil olmak üzere bir çok yer oldu.
Yardımlarınız bekliyorum . Teşekkürler

public partial class Form1 : Form
    {
        public static string possibleChars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
        public static char[] possibleCharsArray = Form1.possibleChars.ToCharArray();
        public static int possibleCharsAvailable = Form1.possibleChars.Length;
        public static Random random = new Random();
        public Form1()
        {
            InitializeComponent();
        }

        public string GenerateRandomString(int num)
        {
            byte[] buffer = new byte[num];
            Form1.random.NextBytes(buffer);
            char[] chArray = new char[num];
            while (num-- > 0)
                chArray[num] = Form1.possibleCharsArray[(int)buffer[num] % Form1.possibleCharsAvailable];
            return new string(chArray);
        }

        public string OgrenciKodOlustur(string str)
        {
            if (str.Length != 24)
                return "";
            string str1 = str.Substring(15, 4) + str.Substring(20, 4);
            string str2 = "PASS";
            string str3 = "";
            for (int index = 0; index < 8; ++index)
                str3 = this.addNum(str3);
            string str4 = str3 + this.GenerateRandomString(20);
            int[] numArray = new int[8]
            {
        1,
        2,
        7,
        11,
        13,
        17,
        20,
        27
            };
            string str5 = str2 + str4;
            string str6 = this.GenerateRandomString(32);
            for (int index = 0; index < 8; ++index)
                str6 = str6.Remove(numArray[index], 1).Insert(numArray[index], str1[index].ToString());
            return str5 + str6;
        }
Cevapla
#2
Birebir aynısını yapmak zorunda mısınız?
GenerateRandomString fonksiyonu verilen uzunlukta rastgele string üretiyor. Bunu Delphi'de kolayca yapabilirsiniz.
possibleChars içinden rastgele karakter seçmek için:
possibleChars[Random(Length(possibleChars))+1];
Bunlardan istediğiniz kadar oluşturup birleştirmek size kalıyor.
There's no place like 127.0.0.1
WWW
Cevapla
#3
abi tam anlamadım
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Delphi RIO da THTTPRio.WebNode.BeforePost Değişikliği vkamadan 1 74 Dün, Saat: 09:46
Son Yorum: vkamadan
  Delphi'de Out Parametresi Halil Han Badem 4 136 30-03-2020, Saat: 14:32
Son Yorum: Halil Han Badem
  delphi vcl responsive erdogan 6 235 23-03-2020, Saat: 16:47
Son Yorum: erdogan
  Delphi güncellemesi ve JVMemoryData bileşeninde aynı anda birden çok kayıt boreas 0 84 10-03-2020, Saat: 18:03
Son Yorum: boreas
  Delphi MVC Framework Tuğrul HELVACI 6 498 05-03-2020, Saat: 15:50
Son Yorum: OldyCoder



Konuyu Okuyanlar: 1 Ziyaretçi