-1

.txtとを使用しc++てXMLファイルを作成する方法があるかどうか知りたいlibxmlですか?

入力ファイルは次のようになります:

"< url   >..........< / url>
<description>His work points a way forward for saving the oceans' health -- and humanity's.</description>
<keywords>fish,health,mission blue,oceans,science</keywords>
<talkid>899</talkid>
<title>Stephen Palumbi: Following the mercury trail</title>
<transcript>
It can be a very complicated thing, the ocean.
And it can be a very complicated thing, what human health is. " 

after transcript I have a huge text
after the tag </transcript>

別のブロックは、私が望むのと同じ構造で始まり、全体を構造化し、メタデータを再グループ化します。その後、テキストを個別に処理する必要があるためです。

4

2 に答える 2

0

有効な xml ドキュメントとは何かを理解することが重要です。つまり、有効であるためには、DTD またはスキーマ (xml スキーマ、relaxng スキーマ、schematron、またはその他の制約) を満たす必要があります。

質問の文言から判断すると、おそらく次のように尋ねます。

「ファイルに適切な形式の XML ドキュメントが含まれていることを確認し、それらの要素を読み取る方法は? XML が .text 拡張子を持つファイルにあるか、uʍop ǝpısdn の回答で述べたようなものであるかは問題ではありません」.

その答えは、対応する XML パーサーによって正常に解析できる場合、XML ドキュメントは整形式であるということです。たとえば、テキスト ファイルに適切な形式の XML が含まれている場合、準拠している任意の XML パーサーで読み取ることができます...

「テキスト」ファイルを次のように読み取ることで、自分で試すことができます

http://www.xmlsoft.org/
http://www.grinninglizard.com/tinyxml/

こちらも一見の価値あり

http://www.w3schools.com/xml/xml_whatis.asp
于 2013-03-22T12:31:38.777 に答える
0

.txtファイルがor.xmlで終わるという事実.whatnotは無関係です。

ファイル名への追加.*は単なる慣習です。フォーマットを確認するために各ファイルを開く時間を節約する方法、またはプログラムが何を扱っているかを知るためのヒント。ヒントはキーワードです。ファイルには任意の名前を付けることができ、規則に従う必要はありません。

xmlファイル名が で終わるかどうかに関係なく、有効な形式のファイルを開くプロセスは同じ.xmlです。

編集

ファイルには多数のXMLブロックがあると言いますが、XMLそれ自体はそうではありません-XML最も外側のタグが1つ必要です。ファイルの最初と最後に<root>andを追加するだけです。</root>必要に応じて名前を変更しxmlます。

言い換えれば、あなたが自分自身に問うべき問題は、XMLパーサーにファイルを供給する前と後に追加データを供給する方法です。このようなもの:

parser.feed('<root>')
parser.feed(read('file.txt'))
parser.feed('</root>')
于 2013-03-22T11:33:02.947 に答える