2009-08-16 9 views

Respuesta

9

escribir directamente a la corriente de base:


new BinaryWriter(p.StandardInput.BaseStream) 
+0

O use 'p.StandardInput.BaseStream.Write'. –

2

stdin es sólo otro flujo de bytes, uno que su programa puede leer desde

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

etc. En el q. a lo que se refiere, el material procedente del stdin se canaliza desde la salida de otro programa. Para hacer esa parte del proceso, usa Console.OpenStandardOuput() para obtener una transmisión y sacar el binario de allí.

+1

Sí, pero si usted está tratando con binario, que no quiere usar 'StreamReader', que se deriva de' TextReader'. –

+1

Sí, debería ser BinaryReader. –

+0

Bueno, tal vez o tal vez no. Si solo quieres tratar con bytes, entonces lidiar con la transmisión en bruto está bien. Otras cosas como el 'BinaryFormatter' también serán útiles, simplemente no un' TextReader'. –