何らかの方法で配列から文字列値を変換し (以下で説明)、文字をファイルに保存したいと考えています。
... から: への変換:
- 16 進数値の string[,,] 配列があります (正確に保存されます。たとえば、値 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 ですが、出力ファイルでは値が間違っています。
この問題の解決策はありますか?