Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将输入文件或流转换为UTF8并检测它是否';是否为UTF8(asp.net)_C#_Asp.net_Utf 8 - Fatal编程技术网

C# 将输入文件或流转换为UTF8并检测它是否';是否为UTF8(asp.net)

C# 将输入文件或流转换为UTF8并检测它是否';是否为UTF8(asp.net),c#,asp.net,utf-8,C#,Asp.net,Utf 8,在C#/asp.net中,执行以下操作的最佳方法是什么: -检测文件是否可靠为UTF8; -以编程方式将输入流或磁盘上的文件转换为UTF8 为检查流是否为UTF8而欢呼Askar,请参见: 要转换它,可以使用StreamReader: new StreamReader(stream, Encoding.UTF8)) 事实上,使用此构造函数可以防止您进行上一次检查,您可以直接使用它 MSDN: 字符编码由encoding参数设置,并且 缓冲区大小设置为1024字节。StreamReader对象

在C#/asp.net中,执行以下操作的最佳方法是什么: -检测文件是否可靠为UTF8; -以编程方式将输入流或磁盘上的文件转换为UTF8


为检查流是否为UTF8而欢呼Askar

,请参见:

要转换它,可以使用StreamReader:

new StreamReader(stream, Encoding.UTF8)) 
事实上,使用此构造函数可以防止您进行上一次检查,您可以直接使用它

MSDN:

字符编码由encoding参数设置,并且 缓冲区大小设置为1024字节。StreamReader对象尝试 通过查看流的前三个字节来检测编码。 它会自动识别UTF-8、little-endian Unicode和 如果文件以适当的字节开头,则为大端Unicode文本 订单标记。否则,将使用用户提供的编码。见 Encoding.GetPreamble方法以获取详细信息

如果希望它不检测小端Unicode和大端Unicode,请调用以下构造函数:

new StreamReader(stream, Encoding.UTF8, false)) 
false
将关闭编码检测,因此此调用将始终使用UTF 8对文件进行编码