C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

xmlファイルをリソースに追加したい

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■86890 / inTopicNo.1)  xmlファイルをリソースに追加したい
  
□投稿者/ palpal (1回)-(2018/04/02(Mon) 11:12:00)

分類:[VB.NET/VB2005 以降] 

開発環境:VB2013

画像ファイルやテキストファイルをリソースに入れて
コード上でMy.Resources.〜のように使用しています。
リソースに追加したファイルが画像ファイルの場合、My.Resources.〜で画像ファイルのBitmapを得ることができ、
テキストファイルの場合、同じ方法でファイル内テキストのStringを得ることができます。

同じ方法で、独自のxmlファイルをリソースに含め、
My.Resources.〜のようにしてxml内データを使いたいのですが、
どのような方法があるでしょうか?

今までは、独自のxmlファイルを実行ファイルと同じフォルダに配置し、
DataSetのReadXMLを使ってこのxmlを読み込む、という方法で
xmlファイル内のデータを利用していました。

このxmlファイルをリソースに登録したものをMy.Resources.〜で参照すると
xmlファイル内のテキストStringが取得されますが、このStringより
DataSetのReadXMLを使用するにはどうすればよいでしょうか?
それとも、他の方法を考える必要があるでしょうか?
引用返信 編集キー/
■86892 / inTopicNo.2)  Re[1]: xmlファイルをリソースに追加したい
□投稿者/ 魔界の仮面弁士 (1598回)-(2018/04/02(Mon) 12:05:46)
No86890 (palpal さん) に返信
> 同じ方法で、独自のxmlファイルをリソースに含め、
> My.Resources.〜のようにしてxml内データを使いたいのですが、
> どのような方法があるでしょうか?
リソースは ReadOnly ですが、それで構わないのですよね?


> DataSetのReadXMLを使ってこのxmlを読み込む、という方法で
> xmlファイル内のデータを利用していました。
とりあえず 3 パターンほど。

Dim xmlText As String = My.Resources.XMLなテキストリソース

Dim ds0 As New DataSet()
Using reader As New System.IO.StringReader(xmlText)
  ds0.ReadXml(reader, XmlReadMode.Auto)
End Using

Dim ds1 As New DataSet()
Dim xdoc = XDocument.Parse(xmlText) 'System.Xml.Linq.XDocument として読み込む場合
Using reader = xdoc.Root.CreateReader()
  ds1.ReadXml(reader, XmlReadMode.Auto)
End Using


Dim ds2 As New DataSet()
Dim xmldoc As New XmlDocument() With {.InnerXml = xmlText} 'System.Xml.XmlDocument として読み込む場合
Using reader As New XmlNodeReader(xmldoc)
  ds2.ReadXml(reader, XmlReadMode.Auto)
End Using
引用返信 編集キー/
■86894 / inTopicNo.3)  Re[2]: xmlファイルをリソースに追加したい
□投稿者/ palpal (2回)-(2018/04/02(Mon) 12:20:04)
3パターンもサンプル例を頂きまして、ありがとうございました。
System.IO.StringReaderでを使う方法でうまくいきましたので、
これで解決とさせて頂きます。
他の方法も勉強のため、後で確認してみます。
ありがとうございました。
解決済み
引用返信 編集キー/

このトピックをツリーで一括表示


トピック内ページ移動 / << 0 >>

このトピックに書きこむ