Direkt von Standarteingabe in Datei schreiben

lusiphur

Mitglied
Hallo Forum,

Ich habe folgendes Problem ich würde genre erreichen das eine ConsolenAnwendung alles was Sie von einem Anderen rogramm auf die Standarteingabe gesendet bekommt liest und ein eine Datei schreibt, alla redfile
c Code: (Nicht von mir :))
Code:
if ( (f = fopen(fname, "wb")) == (FILE *)NULL) {
	fprintf(stdout, "Can't open file \042%s\042\n", fname);
	return 2;
    }
    setmode(fileno(stdin), O_BINARY);
    while ( (len = fread(buf, 1, sizeof(buf), stdin)) != 0) {
	fwrite(buf, 1, len, f);
    }
    fclose(f);

Mein versuch:
Ich versuche schon nurnoch die länge zu ermitteln nachdem ich das mit dem schriben des Streams überhaubt nicht hinbekommen (wenigstens einen teilerfolg bevor ich mich diesem Problem zuwende)
habe aber irgendwie bekomme ich die daten nicht eingelesen

Stream inputStream = Console.OpenStandardInput();
byte[] bytes = new byte[1024];
int outputLength = inputStream.Read(bytes, 0, 1024);

StreamWriter s = new StreamWriter(Environment.CurrentDirectory + "\\bal.txt");
s.WriteLine(outputLength.ToString());
s.Close();
 
Es heißt StandarD.
So gehts:
Visual Basic:
Imports System.IO

Module Module1
     Sub Main()
          Dim s = Console.OpenStandardInput()
          Dim sr As New StreamReader(s)

          Dim sw As New StreamWriter("c:\test.txt")

          sw.Write(sr.ReadToEnd())

          sr.Close()
          sr.Dispose()

          sw.Flush()
          sw.Close()
          sw.Dispose()
     End Sub
End Module

echo Hallo du | ConsoleApplication1.exe
 

Neue Beiträge

Zurück