DOBON.NET DOBON.NETプログラミング掲示板過去ログ

ReadXmlについて

  • 題名: ReadXmlについて
  • 著者: 178
  • 日時: 2005/04/14 23:42:55
  • ID: 10422
  • この記事の返信元:
    • (なし)
  • この記事への返信:
  • ツリーを表示
環境/言語:[VB.NET Framework1.0]
分類:[.NET]

いつもわからなくなると参考にさせてもらっております。

ReadXmlについて、質問があります。

下記のようなコードを記述しております。

'ストリームを作成する
Dim reader As IO.StreamReader = New IO.StreamReader("対象のファイル.XML", _
System.Text.Encoding.GetEncoding("Shift_Jis"))

'データセットにXMLファイルを読み込む
dtSet.ReadXml(reader)

XMLファイルの中身

@のパターン
<?xml version="1.0" encoding="utf-8" ?>
<main>
<NAME>あ</NAME>
</main>

Aのパターン
<?xml version="1.0" encoding="utf-8" ?>
<main>
<NAME>AA</NAME>
</main>

Aのパターンの場合は正常に動作します(エラーにならない)。
@のパターンだとdtSet.ReadXml(reader)の行でエラーが発生します。

エラー内容
'System.Xml.XmlException' のハンドルされていない例外が
system.xml.dll で発生しました。
追加情報 : システム エラーです。

やっとの思いで、XMLファイルの作成方法とVB.NET側での読み込みまで
わかったのですが、上記のエラーの原因がわかりません。現在わかっているのが
日本語を使用するとエラーになるという事です。シフトJISを指定しているので
日本語が使用可能だと思っているのですが。
何か根本的な事がわかっていないと思うのですが、どこがおかしいのかも
よくわかっていません。

よろしくお願いします。
> やっとの思いで、XMLファイルの作成方法とVB.NET側での読み込みまで
> わかったのですが、上記のエラーの原因がわかりません。

エンコーディング指定が余分です。

dtSet.ReadXml("対象のファイル.XML")

だけで十分です。
  • 題名: Re[2]: ReadXmlについて
  • 著者: 178
  • 日時: 2005/04/18 0:22:31
  • ID: 10480
  • この記事の返信元:
  • この記事への返信:
    • (なし)
  • ツリーを表示
回答ありがとうございます。渋木宏明(ひどり) さん。

返答遅くなり申し訳ありません。
渋木宏明(ひどり) さんのいわれている通り修正したら、無事解決しました。
ネットで使用サンプルを見掛けて作成していたんですが、よく見直さないと
駄目ですね(今回は、何の為にエンコードしているのかとか、行う必要が
あるか等)。

無事解決です。ありがとうございます。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板