我正在尝试将一个值转换为另一个值。我正在使用 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");
    }
}
我想等到所有成功解析的值都被写入,然后再写入最后没有的值。