• ベストアンサー

xmlファイルから文字列の読み込み

VBScriptで、 xmlファイルから、あるタグに囲まれた文字列を抜き出して、別のテキストファイルに書き込みたいのですが、どうもうまくいきません。xmlファイル等はどのように開いたり、読み込んだりすればよいのでしょうか。どなたか教えて下さい。 よろしくお願いします。環境はWinNT4.0です。

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

  • ベストアンサー
  • mkii
  • ベストアンサー率40% (43/105)
回答No.1

まず一般にXML文書を解析するときには、「XMLパーサ」というものを使用します。 VBScriptということなので、MicrosoftのXMLパーサであるMSXMLを使用すればよいでしょう。 XML文書をXMLパーサを使用して読みこむと、DOMのオブジェクトが出来ます。 DOMについては↓ここで。 http://www.atmarkit.co.jp/fxml/rensai/msxml01/msxml03.html で、DOMから欲しい文字列を取ればよいです。 MSのサイトの参考資料も参考URLに示しておきます。

参考URL:
http://www.microsoft.com/japan/developer/workshop/xml/articles/xml061598.asp
saya9999
質問者

お礼

ありがとございます!! さっそく試してみて、うまくいきました!!

関連するQ&A

  • xmlファイル内の文字列置換

    エクセルマクロ(VBA)で、xmlファイルを自動生成するツールを作成しようとしています。 やりたいことは、「テンプレートとなるxmlファイルを用意しておき、そのxmlファイルに記述してある特定の文字列を、エクセルで記入したデータで置換する」です。 似たようなマクロを作成された経験のある方いらっしゃいましたら、置換するために行う手順、及び必要な関数等を教えていただけますでしょうか。 何卒よろしくお願いいたします。

  • XMLから読み込みで

    XMLファイルからFlashで文字を表示するという事をしています。 ですが表示させると全角日本語の『を』という文字だけが 表示されません。 XMLファイルはUTF-8で記載されていますが 他の全角日本語は表示されます。 Flashのテキスト表示エリアのフォントは『MS UI Gothic』と なっております どなたかおわかりになられる方、ご指導の程宜しくお願い致します。

  • VBscriptでXMLのファイルから、XPathで指定したデータを読

    VBscriptでXMLのファイルから、XPathで指定したデータを読み込みたいと思っていますが、 XMLファイル中に指定したXPathのタグがない場合、"オブジェクトがありません。" というエラーになってしまいます。 このような場合、どのような処理にすれば良いのでしょうか?親タグ、子タグなどを総当りで、存在するか調べないといけないのでしょうか?以下のようなスクリプトです。 Set xmlDoc = WScript.CreateObject("MSXML2.DOMDocument") With xmlDoc .Async = False .Load("aaaa.xml") xpath01 = "/tag1/tag2/tag3" Set xmlNode = .selectSingleNode(xpath01) MsgBox xmlNode.text End With

  • テキストファイル 文字列置き換え

    複数のテキストファイルを一括で別の連番のついた文字列に 置きかえることのできるソフトを探しています。 以下の3つの条件を満たすソフトはありますでしょうか? ・複数のテキストファイルを一括で置き換え可能 ・「何行目の文字列を置き換える」という指定が可能 ・置き換えた文字列に連番をつけることが可能 ご存知でしたら、ご教示ください。 よろしくお願いします

  • XMLの読み込み

    DocumentBuilderFactory,DocumentBuilder等を使って XMLドキュメントの読み込みを行っています。 例えば、以下の様なXMLドキュメントがあった時 <text>内の読み込みを行うと、テキストテキスト2と なってしまいます。 「テキスト<p/><p/>テキスト2」として取得したいのですが 何かいい方法ないでしょうか? ----------------------------------------- <?xml version="1.0" encoding="Shift_JIS"?> <root> <text> テキスト<p/><p/>テキスト2</text> </root> ----------------------------------------- それとも、XMLドキュメント上、「<p/>」に意味があるのでしょうか? ※プログラム一部抜粋 //-- DOMオブジェクト初期化 DocumentBuilderFactory docBuilderFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder docBuilder = docBuilderFactory.newDocumentBuilder(); //-- XMLファイル読み込み this.doc = docBuilder.parse(new File(strPath)); this.doc.getDocumentElement().normalize();

    • ベストアンサー
    • Java
  • 文字列の読み込みに関して

    C言語で、fgetsを使って文字列ファイルから読み込みを行うと、改行もしくは指定した文字列が来ると読み込みを、止めますが途中で改行が来ても読み飛ばして。(丸)までを読み込むようにするには、どのようなコードを書けばいいのですか? 別に使う関数は、これ以外でもいいのでコードを教えてもらえますか? お願いします。

  • エクセルファイルから指定列の文字を

    エクセルファイルから指定列の文字を、別のテキストファイルの特定の場所へ順番に差し替えたいです。 【例】 A列の文字→元からあるテキストファイルの内容そのままに、●という特定文字へ、住所1、住所2、住所3・・・ というようにエクセルの列に従って、順番に差し替えてくれる方法ってあるでしょうか? コピペだと大変です(涙) よろしくお願いします。

  • perlでxmlファイルを検索して表示する方法

    perlであるxmlファイルを検索して xmlファイルを表示する方法についてお伺いします c:\ -A --X 1.xml 2.jpg 3.jpg --Y --Z このような構造でxからzまでのディレクトリをさがして 「.xml」のファイルの中にある文字列「uuuuu」があれば そのファイルのリストを出力して、クリックすると表示 させたいのですが、perlでできますでしょうか このときファイルのリストを出力するときに 実際のファイル名を.xmlにある特定のタグについて囲まれた 文字列を表示したいと思っています。 (<name>abcde</name>) また「uuuuu」は任意で入力を要求するようにしたいと 思っています。 私ができることはテキストファイルの中身を表示するくらいです open (FILE, 'c:\A\X\1.xml') or die "$!"; while (my $line = <FILE>){ chomp $line; print "$line\n"; } close (FILE); ほかにこのような参考書、urlなどありましたら教えて いただけると幸いです よろしくお願いします

  • 2バイト文字を含むXMLファイルのパース

    こんばんわyukimura1024です。 JavaでXMLファイルを読み込み、それをもとに別のXMLファイルを作って出力するプログラムを作っています。 環境はWinXPsp2、JDK1.4.2_08でeclipseを使ってます。 現象なのですが、以下のようなソースでtest.xmlを読み込もうとすると、ファイル内に2バイト文字があるときだけ、 org.xml.sax.SAXParseException:文字変換エラー:"Uniconvertible UTF-8 character beginning with 0x83"(行番号が小さすぎる可能性があります) というエラーが出てしまいます。 DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance(); DocumentBuilder db = dbf.newDocumentBuilder(); Document doc = db.parse(new FileInputStream("test.xml")); //←ここでエラー ネットで調べて「ヘッダ部で指定したエンコーディング名と、実際のXMLファイルの文字コードが異なっていないかを確認してください。XMLファイルをシフトJISで保存しているのであれば、ヘッダ部には<?xml version="1.0" encoding="Shift_JIS"?>といった指定を行う必要があります。」というのを見つけて試してみましたがうまくいきません。 とにかく2バイト文字が含まれているとエラーが出てしまいます(TT このエラーが出ないようにするには、どうしたらよいででしょうか? ご存知の方、教えていただけると助かります!よろしくお願いします。

  • XMLファイルからタグごとバッファにとりだす方法は?

    こんばんわ。 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操作関連クラスでは実現できないのではないかと思い、少々混乱しています。 これだけの情報でこちらの意図していることが理解できましたら、その解決法(検索キーワードだけでもかまいません)をご教授いただければと思います。 補足が必要であればお申し付けください。 よろしくお願いします。

専門家に質問してみよう