在Compact Framework中读取StreamReader后转换文件编码

时间:2009-03-12 22:12:46

标签: compact-framework streamreader

我逐行阅读文本文件,到目前为止一直很好。我只是用这个:

    using (StreamReader sr = new StreamReader(this._inFilePath))

            {
                string line;
                int index = 0;

                // Read and display lines from the file until the end of 
                // the file is reached:
                while ((line = sr.ReadLine()) != null)
                {
                    //skip empty lines
                    if (line == "")
                    {
                        continue;
                    } 
}
}

现在我注意到我可能需要在读取文件后将其转换为Unicode。怎么做?有没有人使用Convert类?

2 个答案:

答案 0 :(得分:0)

在读取文本后,你无法将文本转换为Unicode ,因为那时它已经是一个字符串,包含映射到Unicode代码点的实际字符。您在代码示例中所做的是将文件作为 Unicode读取,因为that is the default StreamReader behavior

是什么让你认为你必须转换任何东西?文字是否已损坏?

答案 1 :(得分:0)

问题解决了:

            using (StreamReader sr = new StreamReader(this._inFilePath, System.Text.Encoding.Default))

显然Default对应于ANSI,生成的文件是ANSI(不是UTF-8)。

谢谢大家回复!