我给你一个思路:如果你文件中有这些字符,你可以先解码【比如说有得搜索引擎就把中文先进行编码之类的】,你解码之后就可以了吧
在IE中打开文件就可看到中文字符了
用正则表达式找出文件内容中的16进制Unicode编码,然后转换为int,然后转换为char,然后转换为string,然后替换。
代码如下:
//test.txt文件中的内容:\u3010test
using (StreamReader sr = new StreamReader(@"F:\Temp\test.txt"))
{
var text = sr.ReadToEnd();
Console.WriteLine("Original text: " + text);
text = Regex.Replace(text, @"\\u([0-9A-Fa-f]{4})", m =>
{
return ((char)int.Parse(m.Value.Substring(2),
NumberStyles.HexNumber)).ToString();
});
Console.WriteLine("Decoded text: " + text);
}
运行结果:
已经找到答案了 就是写一个函数进行转换就可以了