Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.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# 控制台的编码。读取_C#_.net_Encoding_Console - Fatal编程技术网

C# 控制台的编码。读取

C# 控制台的编码。读取,c#,.net,encoding,console,C#,.net,Encoding,Console,我目前正在开发一个应用程序,它从控制台获取输入,但也支持输入重定向。为此,我通常使用Console.Read来接收单个字符。但是,我找不到任何资源说明它使用的编码(ASCII?UTF-16?UTF-8??)和Console。InputEncoding似乎只影响控制台的直接输入。它使用的是什么编码,如果可能的话,我如何改变它 编辑:文本文件是用UTF-8编码的,但我只想知道如何读取它。 因为我没有收到太多的回复,我决定自己做一些测试。我编写了一个具有不同字节宽度的UTF-8文件: 01234567

我目前正在开发一个应用程序,它从控制台获取输入,但也支持输入重定向。为此,我通常使用
Console.Read
来接收单个字符。但是,我找不到任何资源说明它使用的编码(ASCII?UTF-16?UTF-8??)和
Console。InputEncoding
似乎只影响控制台的直接输入。它使用的是什么编码,如果可能的话,我如何改变它

编辑:文本文件是用UTF-8编码的,但我只想知道如何读取它。

因为我没有收到太多的回复,我决定自己做一些测试。我编写了一个具有不同字节宽度的UTF-8文件:

0123456789:基本拉丁语,1字节
阿拉伯文,2字节
₀₁₂₃₄₅₆₇₈₉: 上标和下标,3字节

这是另一个程序使用的编码,您将其输出重定向到输入。如果它是一个文本文件,那么它就是创建该文件的程序所使用的任何文本编码。所以你只是不知道,除非你有关于那个程序或文件的确凿事实。事实上,它是如此不可用,使得I/O重定向成为一个主要的错误工厂,不依赖它会更好。这是一个应该留在Unix中的Unix功能:)不知道。为什么要投票?