- - PR -
標準入力のファイル名をご存知ありませんか。
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2005-08-17 21:44
.Net C#でCGIプログラムを作成しています。
CGIへUTF-8のPOSTデータを渡したいのですが、CGI内で標準入力からデータを取得するために使っているConsole.Readは、入力データをShift-Jisとして解釈しようとしているようでうまく渡すことができません。 対策として、Console.SetINメソッドで標準入力ファイル名とEncoding.UTF8を引数として生成したStreamReaderを設定してエンコードを変えることを考えたのですが、標準入力のファイル名がわからず困っています。 JavaではSystem.inがこれにあたるようです。 どなたかご存知でしたらご教授願います。 |
|
投稿日時: 2005-08-17 21:53
Console.OpenStandardInputメソッドで標準入力のStreamインスタンスが取得できますから、それを元にStreamReaderを作成すれば良いんじゃないでしょうか。
|
|
投稿日時: 2005-08-18 11:28
返信が遅くなり申し訳ありません。
情報ありがとうございました。 ご指摘の方法で何とかなりそうですね。 早速、試してみます。 結果は別途ご報告します。 |
|
投稿日時: 2005-08-18 12:21
ご指摘の方法で成功しました。
Hongliangさんありがとうございました。 Stream stdStream = Console.OpenStandardInput(); StreamReader stdStreamReader = new StreamReader(stdStream, Encoding.UTF8); Console.SetIn(stdStreamReader); |
1