NOBのArduino日記!

NOBのArduino日記!

趣味は車・バイク・自転車・ラジコン・電子工作です。

Processing(XMLの使い方)

XML
 ProcessingにおけるXMLは、XMLコードを解析できるXMLオブジェクトの表現です。
 loadXML関数を使用して外部XMLファイルをロードし、XMLオブジェクトを作成します。
 UTF-8(またはプレーンASCII)としてエンコードされたファイルのみが正しく解析されます。
 XMLファイル内のエンコーディングパラメータは無視されます。

 Processingで使用するXMLの使い方は以下の通りです。
イメージ 4
   
//  "mammals.xml"という短いXMLファイルが解析されます
// 下のコードにあります。プロジェクトの「データ」フォルダにある必要があります。
//
// <?xml version="1.0"?>
// <mammals>
//   <animal id="0" species="Capra hircus">Goat</animal>
//   <animal id="1" species="Panthera pardus">Leopard</animal>
//   <animal id="2" species="Equus zebra">Zebra</animal>
// </mammals>
 
XML xml;
 
void setup() {
  xml = loadXML("mammals.xml");
  XML[] children = xml.getChildren("animal");
 
  for (int i = 0; i < children.length; i++) {
    int id = children[i].getInt("id");
    String coloring = children[i].getString("species");
    String name = children[i].getContent();
    println(id + ", " + coloring + ", " + name);
  }
}
 
// Sketch prints:
// 0, Capra hircus, Goat
// 1, Panthera pardus, Leopard
// 2, Equus zebra, Zebra
イメージ 3
図1:プログラムの内容
※図1プログラム中では、表1に示す「getChildren」「getInt」「getString」「getContent」メソッドを使用しています

関数の構文
 XML(name)

関数のパラメータ
 name :この名前のノードを作成します。(String)

表1:メソッド一覧

項目

内容

getParent()
要素の親のコピーを取得します。
getName()
要素のフルネームを取得します。
setName()
要素の名前を設定します。
hasChildren()
要素に子があるかどうかを判定します。
listChildren()
すべての子の名前を配列として返します。
getChildren()
すべての子要素を含む配列を返します。
getChild()
指定されたインデックス値またはパスを持つ子要素を返します。
addChild()
要素に新しい子を追加します。
removeChild()
指定された子を削除します。
getAttributeCount()
指定された要素の属性数をカウントします。
listAttributes()
すべての属性の名前のリストを配列として返します。
hasAttribute()
要素に指定された属性があるかどうかをチェックします。
getString()
属性の内容をStringとして取得します。
setString()
属性の内容をStringとして設定します。
getInt()
属性の内容をintとして取得します。
setInt()
属性の内容をintとして設定します。
getFloat()
属性の内容をfloatとして取得します。
setFloat()
属性の内容をfloatとして設定します。
getContent()
要素の内容を取得します。
getIntContent()
要素の内容をintとして取得します。
getFloatContent()
要素の内容をfloatとして取得します。
setContent()
要素の内容を設定します。
format()
XMLデータを文字列としてフォーマットします。
toString()
デフォルトの書式設定を使用してXMLデータStringとして取得。

イメージ 1イメージ 3
励みになりますのでよければクリック下さい(^o^)/



この商品は、Amazon.co.jp が販売、発送します。 ギフトラッピングを利用できます。