• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VB.NETでXMLの読み込みを行うと例外エラーが出てしまい大変困って)

VB.NETでXMLの読み込みで例外エラーが発生し、解決方法がわかりません

このQ&Aのポイント
  • VB.NETでXMLの読み込みを行うと例外エラーが出てしまい大変困っています。どなたかお願いします。
  • コード内でファイルの存在を確認し、XmlTextReaderクラスを使用してXMLを読み込んでいますが、Whileループの中で例外エラーが発生しています。
  • 変数を使用してファイルパスを指定すると例外エラーが発生し、直接パスを指定するとエラーが発生しないため、何が原因なのかわかりません。解決方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

型の問題です。 修正方法は二つあります。(推奨は方法1です) 修正方法1 Private Sub testmethod(ByVal FILENAME) を Private Sub testmethod(ByVal FILENAME As String) へ 修正方法2 xlr = New XmlTextReader(FILENAME) を xlr = New XmlTextReader(FILENAME.ToString()) へ それと FILENAME = "C:\TEST\" FILENAME = FILENAME & "111.xml" がありますが、私なら FILENAME = "C:\TEST" ← 最後の¥はあっても無くてもよい FILENAME = IO.Path.Combine(FILENAME, "111.xml") というようにします。 Combineを利用すると、パスの連結を行うのですが、必要に応じて「\」をつけてくれますよ~

mr-r00
質問者

お礼

ありがとうございます すごく感謝感謝です! 調べたりしても全然わからなかったことが解決してうれしいです。 本当にありがとうございました

その他の回答 (2)

回答No.3

XmlTextReaderは、使ったことないけど、 Private Sub testmethod(ByVal FILENAME) の指定で、パラメータがオブジェクト型になってますけど これだと、オーバーライトうまくいかないのでは? http://msdn.microsoft.com/ja-jp/library/system.xml.xmltextreader.xmltextreader(VS.80).aspx 上記内容によると、パラメータ一つだけというのは以下のパターンでしかないのですが...  XmlTextReader (Stream)  XmlTextReader (String)  XmlTextReader (TextReader)  XmlTextReader (XmlNameTable)

mr-r00
質問者

お礼

ありがとうございます

回答No.1

"C:\\TEST\" ↑なんか\が多くないですか? "C:\\TEST\" を "C:\TEST\" にしたらどうなりますか?

mr-r00
質問者

お礼

うっかりミスでした。 あとxlr = New XmlTextReader(New StreamReader(FILENAME))でした・・・ ただ、これでもエラー 1 縮小変換しないで呼び出される、アクセス可能な 'New' がないため、オーバーロードの解決に失敗しました: 'Public Sub New(path As String)': パラメータ 'path' と一致する引数は 'Object' から 'String' へ縮小変換します。 'Public Sub New(stream As System.IO.Stream)': パラメータ 'stream' と一致する引数は 'Object' から 'System.IO.Stream' へ縮小変換します。 ってなっっちゃいます・・・

関連するQ&A