- PR -

Stringに格納されたXML文書からReadXMLしたい

1
投稿者投稿内容
ポテチ
ベテラン
会議室デビュー日: 2003/03/28
投稿数: 69
投稿日時: 2003-04-15 09:39
StringオブジェクトにDataSet.GetXML()したXML文書が格納されております。
このStringに格納されたXML文書をdataSet.ReadXml(strXML)したいのですが、
引数にString型が使えません。
この場合テキストファイルに書き出さないで直接処理したい時はどうすれば
よいのでしょうか?

NothingButXMLInfoSet
ベテラン
会議室デビュー日: 2003/03/31
投稿数: 65
投稿日時: 2003-04-15 10:26
System.IO.StringReaderを調べてみてください。
ポテチ
ベテラン
会議室デビュー日: 2003/03/28
投稿数: 69
投稿日時: 2003-04-15 18:09
ありがとうございます。
StringReaderクラスで一日色々やってみたのですが、
はずかしながらまだやり方がわかってません。
もう少しがんばってみます。
まずはお礼まで。
ZEBRA
常連さん
会議室デビュー日: 2003/04/14
投稿数: 38
投稿日時: 2003-04-15 22:28
こんばんわ。
ZEBRAです。

以下の様にすれば可能かと思います。

string strXml; //XML文字列
StringReader sReader; //文字列を読み込むクラス(TextReaderクラスから派生)
DataSet ds; //データセット

//データセット情報のXML文字列表現
strXml = "<?xml version='1.0'?>";
strXml += "....";

//データセットに入力できるように、StringReaderオブジェクトにセットする。
sReader = new StringReader(strXml);

//データセットオブジェクトを生成
ds = new DataSet();
//データセットにXML文字列を入力する。
ds.ReadXml(sReader);
ポテチ
ベテラン
会議室デビュー日: 2003/03/28
投稿数: 69
投稿日時: 2003-04-16 13:45
ZEBRA様ありがとうございました。
おかげさまでできました。

コンストラクタの引数に指定するのは思いつきませんでした。
ソースコードまでありがとうございました!
ポテチ
ベテラン
会議室デビュー日: 2003/03/28
投稿数: 69
投稿日時: 2003-04-24 18:08
すみません。教えていただいたやり方では出来てたのですが、
GetXMLした場合は実行できませんでした。

System.NullReferenceException
が発生してしまいます。

何か解決策はありますでしょうか?



Dim strXML As String = sqlDS.GetXml()
Dim strReader As New System.IO.StringReader(strXML)
Dim ds As DataSet
ds.ReadXml(strReader)
ポテチ
ベテラン
会議室デビュー日: 2003/03/28
投稿数: 69
投稿日時: 2003-04-24 20:43
自己レスです。
DataSetをインスタンス化してませんでした。

早とちりしてしまいました。

Dim strXML As String = sqlDS.GetXml()
Dim strReader As New System.IO.StringReader(strXML)
Dim ds As New DataSet("button")
ds.ReadXml(strReader)
1

スキルアップ/キャリアアップ(JOB@IT)