K_XML_ADD
「K_XML_ADD」は、XMLの特定タグに内容を書き込むことができる命令です。
このページでは、文字処理に特化したHSP用モジュール命令セット「kurage_mod」の命令を解説しています。
【書式】
val = K_XML_ADD ( p1 , p2 , p3 , p4 )
p1 : var 書き込み先の変数
p2 : str タグ
p3 : var 書き込む文字列が代入された変数
p4 : int タグの追加フラグ(オプション、0 or 1)
【解説】
XMLまたはHTMLなどタグ囲みの文字列にデータを書き込むことができます。XMLの特定タグの内容を読み出すK_XML_GET命令と対になっています。
p2でタグを指定する際には < や > は指定せず、その中身だけを記述する点に注意してください。
(例)<ABC>あいうえお</ABC>の中身にデータを書き込む際は、p2に”ABC”と指定します。
対象のタグの間にある文字列 あいうえお は、K_XML_ADDで指定した文字列で置き換わります。
p4の追加フラグが0の場合、K_XML_ADDで書き込めるのは起こしタグと閉じタグの文字列が同じ場合になります。
(例)<ABC>あいうえお</ABC>、<OMEDETOU>おめでとう</OMEDETOU>など
classまたはidなどが付与されている複雑なタグに文字列を書き込みたい場合は、K_REP_S命令などを使いキーワードを直接指定してください。
p4の追加フラグを 1 にすると、対象の起こしタグに <![CDATA[ が、閉じタグに ]]> が付加されます。
ちなみにkurage_modの作者は、アプリケーションのiniファイルをタグ囲みの簡易XML形式とし、K_XML_ADDやK_XML_GETでデータの読み書きを行っています。もともとそんな用途で作ったモジュール命令です。
【サンプル】
#include "kurage_mod\\kurage_mod.as" //HSPのフォルダ「common」内からモジュール読み込み T = {" <ABC>あいうえお</ABC> <DEF><![CDATA[かきくけこ]]></DEF> "} 【サンプル1】 A="書き込みたいデータ" K_XML_ADD T,"ABC",A dialog T //※結果 //<ABC>書き込みたいデータ</ABC> //<DEF><![CDATA[かきくけこ]]></DEF> 【サンプル2】 DEF="p4フラグ付きの書き込みです" K_XML_ADD T,"DEF",DEF,1 //p4に1を指定 dialog T //※結果 //<ABC>書き込みたいデータ</ABC> //<DEF><![CDATA[p4フラグ付きの書き込みです]]></DEF> 【サンプル3】 DEF="今度はp4フラグなし" K_XML_ADD T,"DEF",DEF dialog T //※結果 //<ABC>書き込みたいデータ</ABC> //<DEF>今度はp4フラグなし</DEF>
【関連項目】
- K_XML_GET … XMLの特定タグの内容を読み出す (kurage_mod)