- - PR -
C#でXMLパーサーをつかう
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2004-11-08 08:54
お世話になります。
C#でXMLパーサーを使い各データを取得し、DBに格納する処理をしたいのですが、 XmlTextReader、XmlReaderを使ってもエラーが発生します。 状態としては、リクエストを送りレスポンスがXMLで帰ってくる形になります。 なにか、有効なメソッドを教えて頂ければと思います。 宜しくお願い致します。 エラー内容:System.ArgumentException: パスに無効な文字が含まれています。 XML内容:<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ResultCount>0</ResultCount> | ||||||||||||
|
投稿日時: 2004-11-08 10:37
どこかで使い方を間違えてるんでしょうね。
メソッド云々の前にデバッグの技術を身につけましょう。
とのことですから、XmlTextReader なり XmlReader なりに渡す、xml ファイルのパス名が不正ということです。 _________________ // 渋木宏明 (Hiroaki SHIBUKI) // http://hidori.jp/ // Microsoft MVP for Visual C# // // @IT会議室 RSS 配信中: http://hidori.jp/rss/atmarkIT/ | ||||||||||||
|
投稿日時: 2004-11-08 12:37
お世話になっております。
>XmlTextReader なり XmlReader なりに渡す、xml ファイルのパス名が不正ということです というご指摘を頂きましたが、現状ではレスポンスで帰ってきたxmlを変数に格納し、その変数をメソッドの引数に渡す処理をしています。ファイルに保存し、そのファイルのパスを指定したときには簡単に読み込みました。 | ||||||||||||
|
投稿日時: 2004-11-08 13:09
現状、XmlTextReaderのコンストラクタにXMLのデータがはいったStringを渡してエラーが出ているってことですか?
ようするにXMLのデータが格納されているStringからXmlTextReaderを生成したいってこと?? | ||||||||||||
|
投稿日時: 2004-11-08 13:24
caneさん、こんにちは。
XMLを格納する変数の型は何ですか? 仮に String だとして、XmlTextReader に、そんなメソッドありましたっけ? | ||||||||||||
|
投稿日時: 2004-11-08 13:47
お世話になっております。
ただ単に引数の渡し方が間違えていただけでした。 ソースとしては途中からですが // 結果を受け取る。 WebResponse webRes = webReq.GetResponse(); // HttpWebRequest からストリームを取得する。 stream = webRes.GetResponseStream(); // SHIFT JIS で読み取る。 sr = new StreamReader(stream, Encoding.GetEncoding("SHIFT-JIS")); str = sr.ReadToEnd(); //不要な文字列を削除 res = str.Remove(1,1); par = res.Remove(0,1); //xmlを読み込む XmlTextReader reader = new XmlTextReader("str"); ↑ここで修正前は XmlTextReader reader = new XmlTextReader(str); だった為”パスに無効な文字が含まれています。” というエラーログが吐き出されていたようです。修正後読み込みました。 お手数をおかけしました | ||||||||||||
|
投稿日時: 2004-11-08 14:35
諸農です。
元のXMLはUTF-8の指定がされていますが、それは大丈夫なのでしょうか? _________________ 諸農和岳 Powered by Turbo Delphi & Microsoft Visual Studio 2005 十兵衛@わんくま同盟 http://blogs.wankuma.com/jubei/ | ||||||||||||
|
投稿日時: 2004-11-08 14:42
引用:
-------------------------------------------------------------------------------- 元のXMLはUTF-8の指定がされていますが、それは大丈夫なのでしょうか? -------------------------------------------------------------------------------- shift_jisではなくUTF-8に切り替えたのですが、 ”追加情報 : パスに無効な文字が含まれています”になります。 原因は何でしょうか? ご教授お願い致します。 |