C# .txt转换为带编码的字符串

C# .txt转换为带编码的字符串,c#,encoding,C#,Encoding,目标很简单。从.txt文件中获取一些包含特殊字符的法语文本,并将其粘贴到变量“content”中。除了字符“a”的所有实例都被解释为“À”之外,一切都很顺利。我选择了错误的编码(UTF7)还是什么 任何帮助都将不胜感激 // Using ecoding to ensure special characters work Encoding enc = Encoding.UTF7; // Make sure we get all the information about special char

目标很简单。从.txt文件中获取一些包含特殊字符的法语文本,并将其粘贴到变量“content”中。除了字符“a”的所有实例都被解释为“À”之外,一切都很顺利。我选择了错误的编码(UTF7)还是什么

任何帮助都将不胜感激

// Using ecoding to ensure special characters work
Encoding enc = Encoding.UTF7;

// Make sure we get all the information about special chars
byte[] fileBytes = System.IO.File.ReadAllBytes(path);

// Convert the new byte[] into a char[] and then into a string. 
char[] fileChars = new char[enc.GetCharCount(fileBytes, 0, fileBytes.Length)];
enc.GetChars(fileBytes, 0, fileBytes.Length, fileChars, 0);
string fileString = new string(fileChars);

 // Insert the resulting encoded string "fileString" into "content"
 content = fileString;

除了错误的编码外,您的代码是正确的。找到正确的并插入。没有人使用UTF7,所以这可能不是它

也许它是非Unicode的。尝试
编码。默认值
。从经验上看,这一点在德国经常有所帮助


另外,只需使用
File.ReadAllText
。它完成了您所做的一切。

除了错误的编码之外,您的代码是正确的。找到正确的并插入。没有人使用UTF7,所以这可能不是它

也许它是非Unicode的。尝试
编码。默认值
。从经验上看,这一点在德国经常有所帮助


另外,只需使用
File.ReadAllText
。它可以完成您所做的一切。

您尝试过utf8吗?在我的经验中,UTF7使用的大多数东西可能是错误的,因为它很少使用。。。但它不能被诚实地回答,因为你必须知道正确的编码。。。必读:另外,只需使用
File.ReadAllText
。它做你正在做的一切。你试过utf8吗?在我的经验中,UTF7使用的大多数东西可能是错误的,因为它很少使用。。。但它不能被诚实地回答,因为你必须知道正确的编码。。。必读:另外,只需使用
File.ReadAllText
。它做你正在做的一切。