Picproje Elektronik Sitesi

PROGRAMLAMA DİLLERİ => Visual Basic .NET => Konuyu başlatan: rree - 20 Şubat 2013, 14:21:24

Başlık: Metinsel bilgiyi byte türündeki dizi aktarma
Gönderen: rree - 20 Şubat 2013, 14:21:24

Public Sub StringToArray(ByRef Marray As Byte(), ByVal Mstring As String)
        Dim i As Integer
        Dim uzunluk As Integer
        uzunluk = Mstring.Length
        For i = 0 To (uzunluk - 1)
            Marray(i) = Asc(Mid(Mstring, (i + 1), 1))
        Next

Ben yukarıdaki gibi prosodür oluştudum daha kısa yolu varmıdır?
Başlık: Ynt: Metinsel bilgiyi byte türündeki dizi aktarma
Gönderen: Burak B - 20 Şubat 2013, 15:36:05
Google: C# string to byte[]. Bakınız. (http://stackoverflow.com/questions/472906/net-string-to-byte-array-c-sharp)

static byte[] GetBytes(string str)
{
    byte[] bytes = new byte[str.Length * sizeof(char)];
    System.Buffer.BlockCopy(str.ToCharArray(), 0, bytes, 0, bytes.Length);
    return bytes;
}

static string GetString(byte[] bytes)
{
    char[] chars = new char[bytes.Length / sizeof(char)];
    System.Buffer.BlockCopy(bytes, 0, chars, 0, bytes.Length);
    return new string(chars);
}


Ayrıca VB.NET için.
Bakınız. (http://www.chilkatsoft.com/faq/dotnetstrtobytes.html)

Ancak ben genelde ASCIIEncoding.GetBytes(string); kullanıyorum.
Başlık: Ynt: Metinsel bilgiyi byte türündeki dizi aktarma
Gönderen: rree - 20 Şubat 2013, 23:03:31
Public Adizi(400) As byte
Public AStr As String

private Sub deneme()
  AStr="Merhaba"
  StringToArray(Adizi,Astr) 
End Sub
   Ben deki prosudürü yukarıda olduğu gibi kullanıyorum.
Sizin verdiğiniz örneği nasıl kullanabiliriz.

private Sub deneme()
  AStr="Merhaba"
     Adizi=GetBytes (Astr)  'Bu şekilde anlamsız olur sanırım nasıl ifade edilmeli
End Sub

Başlık: Ynt: Metinsel bilgiyi byte türündeki dizi aktarma
Gönderen: Burak B - 20 Şubat 2013, 23:45:06

Public  Dim bytes() As Byte

private Sub deneme()
     bytes=ASCIIEncoding.GetBytes ("Merhaba Dünya")
End Sub


Bknz; MSDN Örneği. (http://msdn.microsoft.com/en-us/library/6ds9sfxz%28v=vs.71%29.aspx)