XMLファイルを復元する際のエラーを回避するには?

解決


ふるら  2005-12-20 20:55:20  No: 129087

現在、VB.NETでXMLファイルを保存・復元をするプログラムを
作成しています。
しかし、復元する際にエラーが出てしまいます。
どなたか回避策をご教授頂けないでしょうか?

[エラーの出る部分]
'XMLファイルから読み込み、逆シリアル化する
Dim cls As EnvSetClass = _
   CType(serializer.Deserialize(fs), EnvSetClass)
[エラーの内容]
'System.InvalidOperationException' のハンドルされていない例外が system.xml.dll で発生しました。
追加情報 : XML ドキュメント (2,2) でエラーが発生しました。

になります。
よろしくお願いします。


Dental  2005-12-20 21:20:22  No: 129088

シリアル化対応クラスの定義も無ければ、
シリアライズされたXMLの内容も書かれて無いですね。

この状態で、デシリアライズ部のコードだけ見せられても、
回答できないです。(こっちで試せるわけでもないので)

とりあえず、エラーメッセージで検索してみたら、
こんな記事が見つかりましたけど、該当する内容かどうかは…?http://www.atmarkit.co.jp/fdotnet/easyxml/easyxml11/easyxml11_01.html


ふるら  2005-12-20 22:31:32  No: 129089

> Dentalさん
ご指摘、ありがとうございます。
もっと勉強し、次回からは気を付けたいと思います。

> シリアル化対応クラスの定義も無ければ、
> シリアライズされたXMLの内容も書かれて無いですね。
---<シリアル化>-----------------------------------
            'XmlSerializerオブジェクトを作成
            '書き込むオブジェクトの型を指定する
            Dim serializer As _
                New System.Xml.Serialization.XmlSerializer( _
                    GetType(EnvSetClass))
            'ファイルを開く
            Dim fs As New System.IO.FileStream( _
                fileName, System.IO.FileMode.Create)
            'シリアル化し、XMLファイルに保存する
            serializer.Serialize(fs, cls)
            '閉じる
            fs.Close()
-----------------------------------------------------

---<XMLの内容>-----------------------------------
 <?xml version="1.0" ?> 
- <EnvSetClass xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <ClickScaleTrackBarValue>2</ClickScaleTrackBarValue> 
  <MWInvalid>false</MWInvalid> 
  <MWSmall>false</MWSmall> 
  <MWTrackBarValue_Scale>2</MWTrackBarValue_Scale> 
  <CSTrackBarValue_Speed>10</CSTrackBarValue_Speed> 
  <CSTrackBarValue_Interval>1</CSTrackBarValue_Interval> 
  <MWAutoScroll>false</MWAutoScroll> 
  <MWTrackBarValue_Speed>10</MWTrackBarValue_Speed> 
  <MWTrackBarValue_Interval>1</MWTrackBarValue_Interval> 
  <ScrollDisply_None>true</ScrollDisply_None> 
  <ScrollDisply_Always>false</ScrollDisply_Always> 
  </EnvSetClass>
-----------------------------------------------------
になります。

何か、回避策が分かればお教え願いたいと思います。
よろしくお願いします。


ふるら  2005-12-20 22:38:47  No: 129090

原因が分かりました。

申し訳ありません。
私の単純ミスでした。
ファイルの保存先パスが間違っておりました。

お騒がせ致しました。


※返信する前に利用規約をご確認ください。




  


  このエントリーをはてなブックマークに追加