- - PR -
XmlTextWriterのエンコーディング指定
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2003-05-23 11:23
VS.NET(C#)で開発しています。
Webフォーム入力項目からXMLリクエストデータを作成し、 POSTしようとしています。 WSDLが提供されていないWebサービスなので、 XMLはXmlTextWriterで書き出そうとしています。 エンコーディングがShift-JISなので、設定したいのですが、 TextWriterでは、無理なのでしょうか? (ヘルプ見ると、ダメそう) ファイルの書き出しは避けたいところなのですが、 何か良い方法はないでしょうか。 よろしくお願いします。 | ||||
|
投稿日時: 2003-05-23 14:23
XmlTextWriterのコンストラクタでEncodingを指定できます。
| ||||
|
投稿日時: 2003-05-23 15:26
回答ありがとうございます。
ただ、申し訳ありません。 私の質問が間違えていました。 私は、初め以下のようなコーディングを行いました。 ------------------------------------------------------------ StringWriter stringWriter = new StringWriter(); XmlTextWriter xmlWriter = new XmlTextWriter(stringWriter); >>以下、ひたすらXML生成<< ------------------------------------------------------------ これだと、当然のことながら、作成されるXML宣言のエンコードは、「UTF-16」になりました。 このエンコードを「Shift-JIS」にしたいのです。 XmlTextWriterは、ファイルとストリームに対してはエンコードを指定できるようなのですが、 StringWriterではだめなようなのです。 StringWriterでも、「Shift-JIS」を指定できないか、ということです。 何度もすみませんが、よろしくお願いします。 | ||||
|
投稿日時: 2003-05-23 19:16
こんな感じで、StringWriterの派生クラスを作るとイケそうです。
| ||||
|
投稿日時: 2003-05-26 10:11
回答ありがとうございます。
おかげで、Shift-JISでの生成ができました。 | ||||
|
投稿日時: 2003-05-26 10:13
こんにちは。
ファイルの書き出しを避けるのであれば、MemoryStreamを使うという手もありますね。 |
1