Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/9.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_Stream_Stdin - Fatal编程技术网

我能把二进制文件放进标准格式吗?C#

我能把二进制文件放进标准格式吗?C#,c#,.net,stream,stdin,C#,.net,Stream,Stdin,关于这个问题 在C#中,如何将二进制文件放入STDin?我希望下面的方法能起作用,但是不行。这是有道理的。那么如何推送字节[]数组呢 new BinaryWriter(p.StandardInput.FormatProvider); stdin只是另一个字节流,您的程序可以从中读取 Stream st=Console.OpenStandardInput (); StreamReader sr=new StreamReader(st); 等等,在q。您所指的是,从stdin输入的材料是通过管道

关于这个问题

在C#中,如何将二进制文件放入STDin?我希望下面的方法能起作用,但是不行。这是有道理的。那么如何推送字节[]数组呢

new BinaryWriter(p.StandardInput.FormatProvider);

stdin
只是另一个字节流,您的程序可以从中读取

Stream st=Console.OpenStandardInput ();
StreamReader sr=new StreamReader(st);

等等,在q。您所指的是,从stdin输入的材料是通过管道从另一个程序的输出输出的。要完成该过程的这一部分,您可以使用Console.openStandardOutput()获取一个流,并通过该流将二进制文件推出。

直接写入基流:


new BinaryWriter(p.StandardInput.BaseStream)

是的,但是如果你处理的是二进制文件,你不想使用
StreamReader
,它是从
TextReader
派生而来的。是的——应该是BinaryReader。嗯,可能是,也可能不是。如果您只想处理字节,那么处理原始流就可以了。其他类似于
BinaryFormatter
的东西也很有用-只是不是
TextReader
。或者使用
p.StandardInput.BaseStream.Write