![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
こんばんわ。
MS C#2005でXMLファイルをDBに取り込むPGを作っています。
困ったことが発生したのですが、調べるにしてもどこからせめてよいのか見当がつかなくなり、どうにもならなくなってしまいました。
以下に簡単ですが、読み込みしたいXMLを記述します。
<?xml version="1.0" encoding="utf-8"?>
<XML情報 version="1.0">
<リスト 番号="1">
<概要>
<表示番号>0123456789</表示番号>
<概要タグ2>xxx</概要タグ2>
<概要タグ3>xxx</概要タグ3>
・
・
</概要>
<詳細>
<注文>
<アイテム 品目="○○">○○</アイテム>
<アイテム 品目="□□">□□</アイテム>
</注文>
</詳細>
</リスト>
</XML情報>
上記のXMLファイルから「<詳細>~</詳細>」間をタグつきの文字列として取り出し、いったんバッファ上に確保した上でDB(SQL Server2005)へ取り込みしたいのです。
ただし、DBへ取り込む際に「<アイテム>」部分の値を一部変更するので(具体的には「品目」属性の値を手直しする)XML的な取り扱いをしながらバッファ操作する方法を探しています。
問題なのは、XMLファイルから「<詳細>~</詳細>」間をタグつきの文字列として取り出す振る舞いを検索エンジンなどで探すにあたって、どういったキーワードで探したらいいのか皆目見当がつきません。
XMLReaderクラスなどの項目で検索しているのですが、思ったような結果が導き出せないでいます。
もしかすると、XML操作関連クラスでは実現できないのではないかと思い、少々混乱しています。
これだけの情報でこちらの意図していることが理解できましたら、その解決法(検索キーワードだけでもかまいません)をご教授いただければと思います。
補足が必要であればお申し付けください。
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
XMLの大きさにもよるのですが,System.Xml.XmlDocumentを使うことはできませんか。
XmlDocumentはDOMなので,XMLの階層構造をそのまま扱うことができます。
問題点は,全部読み込んでしまうので,対象のXMLが大きいとメモリを食いすぎる可能性があることです。
他には,XmlReaderのInnerXmlで得た詳細要素の内容に開始タグと終了タグを付けてXmlDocumentで扱うとか。
これならば,XMLの一部分しか扱わなくて済むはずです。
が,処理は全部読み込む場合に比べて面倒になります。
参考URL:http://msdn2.microsoft.com/ja-jp/library/system. …
すいません、ご回答いただいたurlを参考に実装実験をしており、返信に時間がかかってしまいました。
XmlDocumentとXmlTextReaderの組み合わせで思い通りの動作を実現できました。
大変参考になりました。
また、似たような問題がでて自分で解決できない状況になりましたらOKWaveに投稿しますので、よろしければご回答にご協力いただければと思います。
どうもありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- XML XML同じ名前の要素を自動で集約するツール 1 2022/04/11 09:21
- HTML・CSS HTMLタグのあるCSVファイルを利用する方法 4 2023/03/19 14:41
- アプリ おすすめのパスワード管理アプリを教えてください。(iOSとWindows対応) 4 2023/01/19 02:08
- Excel(エクセル) エクセルの数式について教えてください。 7 2023/06/18 10:16
- Wi-Fi・無線LAN PCWi-Fiの設定方法がわからなくて困っています。 4 2022/12/28 18:30
- AJAX 自作の地図をグーグルマップのようにしたい 3 2022/11/15 11:53
- Visual Basic(VBA) vbaのエラー対応(実行時エラー7:メモリが不足しています) 4 2023/04/24 00:20
- Visual Basic(VBA) vbaの構文の修正相談(xmlファイルを順に開いてコピペ作業) 1 2023/04/22 01:18
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
タグにはさまれている文字以外...
-
htmlのソースからテーブルの値...
-
正規表現でタグの置換をしたい...
-
imgタグにPHPを仕掛けてリンク...
-
reuterの記事をbeautiful.soup....
-
VBAのコマンドボタンの文字列の...
-
メッセージボックスで1025文字...
-
ソースコードの1行が長いとき...
-
文字の入力で横バー上段、中断...
-
【VBA】エクセルで最後の不要な...
-
データベースから取り出したテ...
-
ダブルコーテーション(
-
UTF8メールがLotus Notesで文字...
-
コンボボックスの項目中に改行を
-
テキストボックスの回転
-
最終行の改行について
-
VBAを使ってHTMLソースから特定...
-
VBSで"をエスケープする文字は?
-
エスケープ文字の復帰(¥r)と...
-
fputsで改行できない
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
[php][正規表現]タグ以外を削除...
-
正規表現で複数行に渡る範囲を...
-
変数にHTMLを代入する場合
-
phpの正規表現でstyle="●●"を削...
-
正規表現でタグの置換をしたい...
-
タグにはさまれている文字以外...
-
コメントタグに挟まれた部分を...
-
Nvuで作成したhtmlをコピペして...
-
htmlのソースからテーブルの値...
-
htmlタグ間の特定文字置換
-
スクレイピングの仕方
-
Java正規表現-"ある文字列"を含...
-
JSFタグのfタグとは
-
タグとクッキーって関係あるん...
-
eclipseより、タスク・タグの使...
-
PHP 取得した経過時間の表示に...
-
htmlソースの中を検索して、
-
srcに「banner.」で始まるファ...
-
アフィリエイトタグについて質...
-
アクセス解析データがでません...
おすすめ情報