ある値を別の値に変換しようとしています。streamreader/writerを使用してテキストファイルをインポートしています。ifステートメント内のwhileループの一部を、ループの残りの部分が終了するまで待ってから、想定される内容を書き込むことができるかどうかを知りたいです。これはおそらく簡単な質問だと思いますが、何らかの理由で私はそれに指を置くことができます。私はマルチスレッド処理を使用しておらず、非同期を避けたいと思っています。
using (StreamReader reader = new StreamReader(convertInput))
{
string line;
writer.WriteLine(formatter, "Original Value", "Converted Value");
writer.WriteLine(formatter, "--------------", "---------------");
A: while ((line = reader.ReadLine()) != null)
{
string str2BeConverted = line;
long numHexToDex;
if ((Int64.TryParse(line, NumberStyles.HexNumber, null, out numHexToDec)) == false)
{
writer.WriteLine();
writer.Write(line + " " + "is not a Hexadecimal value.");
goto A;
}
Int64.TryParse(line, NumberStyles.HexNumber, null, out numHexToDec);
string lineChanged = numHexToDec.ToString("G");
}
}
正常に解析されたすべての値が書き込まれるまで待ってから、最後に書き込まれなかった値を書き込みたいと思います。