Javaでは、これを行うことができます:
File file = new File(filepath);
PrintStream pstream = new PrintStream(new FileOutputStream(file));
System.setOut(pstream);
byte[] bytes = GetBytes();
System.out.write(bytes);
C#で似たようなことをしたい。私はこれを試しましたが、うまくいきませんでした:
StreamWriter writer = new StreamWriter(filepath);
Console.SetOut(writer);
byte[] bytes = GetBytes();
Console.Out.Write(bytes);
ここでの主な問題は、Write メソッドが引数としてバイト配列を受け入れないことです。
File.WriteAllBytes(filepath, bytes) で回避できることはわかっていますが、C# コードを元の Java コードにできるだけ近づけたいと考えています。