AYU MAX

プログラミングとか作ったもの

UE4 MarketplaceにXMLパーサープラグインを出品しました

EasyXMLParser

本日Unreal EngineのMarketplaceにEasyXMLParserという名前でプラグインを出品しました。

前回リリースしたObjectDelivererに続いて2作品目となります。

前回は無料で出品したのですが、今回はお値段をつけさせていただきました。 使いやすさを重視して作りましたので、よろしければ是非ご検討ください。

このプラグインを使ったサンプルはGitHubに公開しています。

github.com

機能紹介

EasyXMLParserの機能を紹介します。

テキストの取得

テキストノードを取得するには、取得したい値のアクセス文字列を作成します。

アクセス文字列はタグ名をドットで結ぶことによって作成されます。

同じタグ名を持つノードが複数ある場合は、0から始まるインデックス番号を指定できます(例:[2] - > 3番目)。

インデックスを指定しないと、最初の要素が取得されます。

GALLERY 4

属性を取得するためのアクセス文字列は(アットマーク+属性名)で指定します。

GALLERY5

型を指定しての値の取得

XMLから値を取得するために、次の4つの機能が用意されます。

  • ReadInt(int)
  • ReadFloat(float)
  • ReadString(string)
  • ReadBool(bool)

「AccessString」にはアクセス文字列を入力します。

「DefaultValue」にはデフォルト値を入力します。指定された値がXMLに存在しない場合は、デフォルト値が返されます。

GALLERY 1

オブジェクトの取得

ノードを値としてではなくオブジェクトとして取得する "ReadElement"および "ReadElements"メソッドもあります。

ReadElementは1つのノードを取得します。

ReadElementsは複数のノードの配列を取得します。

GALLERY 2

XMLパース手法

XMLをロードする方法は2つあります。XMLファイルをロードするための "LoadFromFile"と、XML文字列をロードするための "LoadFromString"です。

バックグラウンドで解析を実行する非同期バージョンもあります。

GALLERY 3

XMLの次は

個人的にはたまにXMLをパースする機会があるので、今回プラグイン化してみました。

ただ現在はXMLよりもJsonの方が使われているような気もしています。

ということで、次のプラグインとしてJsonパーサーを出すつもりです。

このEasyXMLParserと同様の使い勝手で設計しておりMarketPlaceに現在審査してもらっています。