xalanを使ってみよう

2005年01月16日(日)更新


j2sdkとxalanの確認

さらら: 前回まででj2sdkとxalanのインストールが終わったから、やっとxalanを使うことができるのね?

たけち: うん。そうだね。一応、j2sdkとxalanのありかを確認しておこうね。

・j2sdk
C:\j2sdk1.4.2_05
・xalan
C:\xalan-j_2_6_0

さらら: はい。xalanを使うためには、j2sdkが必要だったのね。


xalanの使い方: コマンドプロンプトウィンドウを開く

たけち: じゃあ、xalanを使ってみようね。そのためには、まずコマンドプロンプトウィンドウを開いてみよう。

さらら: コマンドプロンプトウィンドウ? なんだか色々と面倒そうね。(^ ^;

たけち: まぁ、すぐに慣れるから心配いらないよ。次の図で示したようにやってみて。

さらら: はいはい。(^ ^;

コマンドプロンプトウィンドウ
■コマンドプロンプトウィンドウを開く

さらら: あっ、黒いウィンドウが表示されたわ。これでいいの?

たけち: うん。いいよ。このウィンドウを使ってxalanを使ってみよう。

さらら: はい。

たけち: 以前に説明したXMLデータからCSVデータに変換する例をやってみるね。細かいことは CSVファイルへの変換 を参照してね。

さらら: はい。


xalanを使って、XMLファイルからCSVファイルを生成する

たけち: まず、xalanを使う時に、コマンドプロンプトウィンドウでどう入力するかを説明しておくね。図を見てもらうと分かると思うけど。

xalanを使うときのコマンドの書き方
■xalanを使うときのコマンドの書き方とファイル

さらら: XMLファイル名、XSLTファイル名、そして出力ファイル名の指定が必要になるのね。

たけち: そうなんだね。じゃあ、具体的にXMLファイルからCSVファイルを作成することをやってみよう。

さらら: はい。

たけち: ここで、「C:\csv」というフォルダー作って、その中に・・・・・

さらら: 分かったわ。「C:\csv」というフォルダーに次の二つのファイルを作ればいいのね。

たけち: そうそう。やってみて。


XMLファイルとXSLTファイルの例

たけち: XMLファイルとXSLTファイルは CSVファイルへの変換 で使ったものと同じにしておくね。念のためにここでも載せておこう。

さらら: えぇ。助かるわ。

【poem.xml】

【poem.xml】 XMLファイル: 万葉集第1巻・第2巻抜粋

<?xml version="1.0" encoding="Shift_JIS" ?>

<manyosyu>
<poem pno="8">
  <poet>額田王(ぬかたのおおきみ)</poet>
  <yomi>熟田津(にきたつ)に船(ふな)乗りせむと月待てば潮もかなひぬ今は漕(こ)ぎ出(い)でな</yomi>
</poem>

<poem pno="20">
  <poet>額田王(ぬかたのおおきみ)</poet>
  <yomi>茜(あかね)さす 紫野行き標野(しめの)行き 野守(のもり)は見ずや 君が袖振る</yomi>
</poem>

<poem pno="28">
  <poet>持統天皇(じとうてんのう)</poet>
  <yomi>春過ぎて 夏来たるらし 白妙(しろたえ)の 衣干したり 天(あめ)の香具山(かぐやま)</yomi>
</poem>

<poem pno="37">
  <poet>柿本人麻呂(かきのもとのひとまろ)</poet>
  <yomi>見れど飽かぬ 吉野の川の 常滑(とこなめ)の 絶ゆることなく またかへり見む</yomi>
</poem>

<poem pno="113">
  <poet>額田王(ぬかたのおおきみ)</poet>
  <yomi>み吉野(よしの)の 玉(たま)松(まつ)が枝(え)は はしきかも 君が御言(みこと)を 持ちて通(かよ)はく</yomi>
</poem>

<poem pno="137">
  <poet>柿本人麻呂(かきのもとのひとまろ)</poet>
  <yomi>秋山に 落つる黄葉(もみちば) しましくは な散り乱ひそ 妹があたり見む</yomi>
</poem>

</manyosyu>

【poem.xslt】

【poem.xslt】 XSLTファイル: CSV出力変換用

<?xml version="1.0" encoding="Shift_JIS"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" >
<xsl:output method="text" encoding="Shift_JIS" />

<xsl:template match="/">歌番号,作者,読み <xsl:apply-templates select="manyosyu/poem" />
</xsl:template>

<xsl:template match="poem">
<xsl:value-of select="@pno" />,<xsl:value-of select="poet" />,<xsl:value-of select="yomi" /><xsl:text>
</xsl:text>

</xsl:template>

</xsl:stylesheet>

さらら: できたわよ。これでやっとxalanを使ってCSVファイルを作ることができるのね。

たけち: そうだよ。じゃあ、プロンプトウィンドウで次のようにコマンドを入力してみて。

xalanを使ってXMLファイルからCSVファイルを生成する
■xalanを使ってXMLファイルからCSVファイルを生成する


生成されたCSVファイルを確認する

さらら: やってみたけど、何も表示されないのね。

たけち: うん。でも、ちゃんとCSVファイルは【poem.csv】という名前でできているんだよ。

さらら: どれどれ。。。。あっ、ほんとだ、できてる!!

C:\csvフォルダにCSVファイルが生成されている
■C:\csvフォルダにCSVファイルが生成されている

たけち: このCSVファイルは、Microsoft社のExcelで見ることができるんだよ。poem.csvファイルを開いてごらん。

さらら: あっ、そうなのね?! じゃあ、ちょっと見てみるわね。

Excelでpoem.csvファイルを読み込み・表示

さらら: あっ、ちゃんとできてる。なんだか、うれしいわ。

たけち: ちょっと準備に手間がかかったけど、これからは必要に応じて、xalanを使うことにしようね。

さらら: はい。ありがとう! 

→次はxsl:commentです。・・・ (^ ^;