【发布时间】:2021-08-23 06:57:46
【问题描述】:
我需要将字符串数组转换为字节数组。我知道这个问题已经发布并回答了很多次,但由于某种原因,没有一个解决方案适合我。
这是最常见的解决方案:
public static byte[] StringArrayToByteArray(string[] someStringArray)
{
return someStringArray.Select(s => Convert.ToByte(s, 16)).ToArray();
}
但是,当我运行它时,我收到以下错误:FormatException: Could not find any parsable digits. 或 FormatException: Additional unparsable characters are at the end of the string.
我需要为我的数据保存字母和分隔符 (/)。这是我的代码:
string[] stringArray = new string[map.Size.x * map.Size.y];
int counter = 0;
for (int y = (int) map.Rect.y; y < map.Rect.yMax; y++)
{
for (int x = (int) map.Rect.x; x < map.Rect.xMax; x++)
{
stringArray[counter] = map[x,y].Name;
stringArray[counter] += "/";
counter++;
}
}
那我需要把这个string[]转换成字节数组。
【问题讨论】:
-
没有。在我的情况下,将数据附加到现有字符串非常慢。我需要能够快速将字符串数组转换为字节数组。
标签: c# arrays string type-conversion byte