我正在使用C#(.NET 4.5)来读取包含一些财务信息的文本文件。但是,每当我从文件中读取负值(例如: - $ 1,000.00)时,我就会看到" - $"转换为"�"。例如: - $ 1,000.00至�1,000.00。为什么会这样?
我尝试使用File.ReadAllText以及reader.ReadToEnd(),其中reader是StreamReader实例。我也尝试过指定编码(UTF8)。没有任何效果。
答案 0 :(得分:-1)
您需要格式化字符串,如下所示:
string curC = System.Threading.Thread.CurrentThread.CurrentCulture.ToString();
System.Globalization.NumberFormatInfo curFormat = new System.Globalization.CultureInfo(curC).NumberFormat;
curFormat.CurrencyNegativePattern = 1;
num.ToString("c", curFormat);
// or string.Format(curFormat, "{0:c}", num);