
下記のようなXMLを作成で質問です。
<Data-3>の要素が14万件あります。
VB6で下記のような記述を行った場合、処理速度がとても遅かったです。
(既存のシステムがまだVB6です・・・)
速度改善できる記述を教えて頂けないでしょうか。
それともVB6だと限界でしょうか。
また、Vb.NETでDataTableでWriteXmlを使い作成しようかとも思ったのですが
<Data-3>だけの繰り返しの場合はできるのですが
<Data-1><Data-2>がある場合の記述方法が分かりません。
そもそのDataTableでの作成は可能でしょうか。
お知恵を拝借できると大変助かります。
<?xml version="1.0" encoding="Shift_JIS"?>
<Data>
<Data-1>aaaa</Data-1>
<Data-2>bbbb</Data-2>
<Data-3>
<ID>1000</ID>
<kana>テスト 1000</kana>
</Data-3>
<Data-3>
<ID>1001</ID>
<kana>テスト 1001</kana>
</Data-3>
:
:
</Data>
■VB6
'MSXMLオブジェクトを生成
Set xmlDocument = New MSXML2.DOMDocument
'要素<Data>を生成
Set xmlRoot = xmlDocument.appendChild(xmlDocument.createElement("Data"))
'要素<Data-1>を生成
Set xmlData = xmlDocument.createElement("Data-1")
xmlData.Text = "aaaa"
Call xmlRoot.appendChild(xmlData)
'要素<Data-2>を生成
Set xmlData = xmlDocument.createElement("Data-2")
xmlData.Text = "bbbb"
Call xmlRoot.appendChild(xmlData)
Do Until xxxx
'要素<Data-3>を生成
Set xmlData = xmlDocument.createElement("Data-3")
'要素の子要素を生成して要素に追加
Set xmlChildData = xmlData.appendChild(xmlDocument.createElement("ID"))
xmlChildData.Text = "ID"
Set xmlChildData = xmlData.appendChild(xmlDocument.createElement("kana"))
xmlChildData.Text = "kana"
'1人分の要素に追加
Call xmlRoot.appendChild(xmlData)
Loop
'----改行付きにする ----
'Writerでインデント設定する
oXmlWriter.indent = True
'ReaderとWriterを紐づける
Set oXmlReader.contentHandler = oXmlWriter
'作成したXMLをReaderで読み込む
oXmlReader.parse xmlDocument.xml
'改行付きに変換
xmlDoc2.loadXML oXmlWriter.output
'Shift_JISに変換
Set domDecXml = xmlDoc2.createProcessingInstruction("xml", "version=""1.0"" encoding=""Shift_JIS""")
'元々のencodingを無視して変更する
Call xmlDoc2.replaceChild(domDecXml, xmlDoc2.firstChild)
'改行付きで出力
xmlDoc2.save ("c:\test.xml")
'各オブジェクトの開放は省略
A 回答 (1件)
- 最新から表示
- 回答順に表示
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
含む含まないという概念自体の...
-
CSSで改行後の行間調整
-
CSSのa:hoverが急に一部だけ効...
-
見た目と声さえ良ければ、他の...
-
aの中にspan
-
figcaption要素の中にul要素
-
【ヒトの神秘】美男美女から何...
-
「○○は××の全てではない」は肯...
-
初歩的な質問です。<div>のwidt...
-
html の divとtable の役割
-
html/cssの、navを2段にする...
-
htmlの文字が縦書きになる
-
リンクを知らせる手のマークが...
-
疑似クラス :activeが効きません
-
画像イメージの上下左右、欲し...
-
訪問済のリンク色を変えない方法
-
CSS(0の単位)について
-
<h1>、<h2>と<p><div>の行間を...
-
ボタンをセル内一杯に表示させ...
-
smartyテンプレートの<style></...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
含む含まないという概念自体の...
-
【ヒトの神秘】美男美女から何...
-
角丸画像の背景色を透明にした...
-
NからZへの全単射を具体的に構...
-
CSSで改行後の行間調整
-
改行ほどは行かないけど、若干...
-
HTML の繰返し法???
-
aの中にspan
-
マージソートの計算量について-...
-
input type="hidden"で取得した...
-
親要素・子要素
-
質問1.
-
tdに対してmin-heightの定義、...
-
テキストボックスの中にリンク...
-
スタイルシートで文字色を指定...
-
その要素がjQueryでremove()済...
-
見た目と声さえ良ければ、他の...
-
CSSのa:hoverが急に一部だけ効...
-
「にはとって代わることのでき...
-
fontawesomeのアイコンを少し大...
おすすめ情報