我想以某种方式从数组转换字符串值(如下所述)并将字符保存到文件中。
从 ... 转换为:
- 我有十六进制值的字符串 [,,] 数组(完全保存 - 例如值 1A 保存为“1A”)
- 我将每个单元格转换为 int 值
- 将 int 值转换为 char
- 使用将字符保存到文件
StreamWriter
编码:
StreamWriter streamWriter = new StreamWriter(this.outputFilePath);
for (int i = 0; i < this.workingArray.GetLength(0); i++)
{
for (int j = 0; j < this.workingArray.GetLength(1); j++)
{
for (int k = 0; k < this.workingArray.GetLength(2); k++)
{
int value = int.Parse(this.workingArray[i, j, k], System.Globalization.NumberStyles.HexNumber);
char symbol = Convert.ToChar(value);
streamWriter.Write(symbol);
}
}
}
streamWriter.Close();
问题是,当我的workingArray
单元格值为 FE 时,我在文件中获得值 CE。我不知道为什么它以错误的方式保存值。而且符号代码是254,经过16进制转换后正好是FE,但是在输出文件中它的值是错误的。
这个问题有什么解决办法吗?