2016-11-18 207 views
0

我想将字符串数组转换为字节数组。我想使用Encoding.Default.GetBytes(),但它只接受StringChar()。这是代码将字符串数组转换为字节数组并返回

Dim aStringArray(2) As String 

aStringArray(0) = "FileName" 
aStringArray(1) = "FileSize" 

Dim stringArrayBytes() As Byte = Encoding.Default.GetBytes(aStringArray) `this is wrong 

回答

1

如果你想在阵列组合成一个单一的字节数组试试这个

Dim aStringArray(1) As String 

    aStringArray(0) = "FileName" 
    aStringArray(1) = "FileSize" 

    Dim stringArrayBytes As New List(Of Byte) 
    For Each s As String In aStringArray 
     stringArrayBytes.AddRange(System.Text.Encoding.Default.GetBytes(s)) 
    Next 

    Dim bytarray() As Byte = stringArrayBytes.ToArray 
+1

我觉得'.ToList()'是多余的 – Fabio

+0

你是对的。我会修复这个帖子。 – dbasnett

1

在这里,小竞标不同的方法,根据您的例子:)

Dim aStringArray(2) As String 

aStringArray(0) = "FileName" 
aStringArray(1) = "FileSize" 

Dim allStrngItems As String = String.Join(String.Empty, aStringArray) 
Dim allBytes As Byte() = Encoding.Default.GetBytes(allStrngItems) 
相关问题