2007年08月30日
川俣晶の縁側ソフトウェア技術雑記total 5503 count

WebClient.UploadStringメソッドで送信したXML文書をASP.NETで受け取る時InputStreamプロパティで上手く受け取れない?

Written By: 川俣 晶連絡先

 ちょっと良く分からなかったのに加えて調査する時間がないのでメモだけ。

前提 §

 .NET Framework 2.0のWebClient.UploadStringメソッドでXML文書を送信する。

 受信側はASP.NET 2.0のフォームのLoadイベント。

 LoadイベントハンドラのXmlDocument doc = new XmlDocument();というdocオブジェクトに対して。

その1 §

doc.Load(this.Request.InputStream);

 これで行けるかと思ったが通らない。

その2 §

byte[] ar = new byte[32768];

int l = this.Request.InputStream.Read(ar,0,ar.Length);

string s = System.Text.Encoding.UTF8.GetString(ar, 0, l);

doc.LoadXml(s);

 これは通る。

 (しかし、固定サイズバッファは無駄が多いし、溢れの危険もある)

その3 §

doc.Load(new StreamReader(this.Request.InputStream,System.Text.Encoding.UTF8));

 これでも通る。

 (これなら安心。とりあえず、これを使うか)

感想あるいはたわごと §

 XML 1.0勧告の通りに実装してあれば、デフォルトでUTF-8のXML文書は解析可能のはずだと思いましたが。

 どうも、明示的なUTF-8への変換を外部に持たせないと解析してくれない感じでしょうか?

Facebook

このコンテンツを書いた川俣 晶へメッセージを送る

[メッセージ送信フォームを利用する]

メッセージ送信フォームを利用することで、川俣 晶に対してメッセージを送ることができます。

この機能は、100%確実に川俣 晶へメッセージを伝達するものではなく、また、確実に川俣 晶よりの返事を得られるものではないことにご注意ください。

このコンテンツへトラックバックするためのURL

http://mag.autumn.org/tb.aspx/20070830193456
サイトの表紙【技術雑記】の表紙【技術雑記】のコンテンツ全リスト 【技術雑記】の入手全リスト 【技術雑記】のRSS1.0形式の情報このサイトの全キーワードリスト 印刷用ページ

管理者: 川俣 晶連絡先

Powered by MagSite2 Version 0.36 (Alpha-Test) Copyright (c) 2004-2021 Pie Dey.Co.,Ltd.