社内SEの徒然なる日記

ASTERIAでxml文書を扱ってみたNo7 配列の定義1

■ ASTERIAxmlファイルの配列を定義する

他の人がASTERIAxmlファイルを読込む処理を作ったのですが、その中の配列の定義方法が何やら変な感じがします。

recordタグの部分が配列であるxmlファイルを作ります。
<?xml version="1.0" encoding="utf-8"?>
<root>
<record>
<field1>あ</field1>
<field2>い</field2>
<field3>う</field3>
</record>
<record>
<field1>か</field1>
<field2>き</field2>
<field3>く</field3>
</record>
<record>
<field1>さ</field1>
<field2>し</field2>
<field3>す</field3>
</record>
</root>


私なら、recordの部分を配列として定義します。
ASTERIAでxml文書を扱ってみたNo7 - 1

ところが、その人はrecordを必要な数だけ定義していました。
ASTERIAでxml文書を扱ってみたNo7 - 2

Mapperで転記して実行してました。入力データをそのまま読み込めています。
ASTERIAでxml文書を扱ってみたNo7 - 3

ASTERIAでxml文書を扱ってみたNo7 - 4

ちなみに、テストデータのrecordが4以上になった場合は、4つ目以降が読めなくなりました。定義が3つまでなので、そうなりますよね。もちろん、逆に少ない場合(recordが2以下)は、その数だけが読み込まれます。

■ 後書き

仕様上、recordは0〜3までしかありえないのであれば、これで良いといえば良いのかと思っていたのですが、どうやら後者の方法の方が正しかったらしいです。

xmlってhttpと同じような書き方をするから、慣れている後者をイメージしながらレイアウトを作っていたのですが、よく考えるとイメージするべきなのはCSVや固定長のレイアウトなんですよね。

次回、その辺りの失敗事例を書いてみます。

前回:ASTERIAでxml文書を扱ってみたNo6 身も蓋もない話
次回:ASTERIAでxml文書を扱ってみたNo8 配列の定義2

最新の記事:http://harikofu.blog.fc2.com/
投稿記事の一覧:http://harikofu.web.fc2.com/

--- blog end --- スポンサードリンク

PageTop

コメント


管理者にだけ表示を許可する