Groovy > テンプレートの使い方

更新日 2012-08-15
広告
Groovyでは、「テンプレート」を利用して文字列を生成できます。

SimpleTemplateEngine

サンプル SimpleTemplateSample.groovy の内容は以下のとおりです。
import groovy.text.SimpleTemplateEngine

def template = 'My name is $name,\nI am <% print age %> years old.\nI love ${lang}!'

def args = ["name":"Taro", "age":"18", "lang":"Groovy"]

def engine = new SimpleTemplateEngine()
text = engine.createTemplate(template).make(args)

println(text)
変数 template は、文字列のテンプレートです。$name や age や ${lang} は、可変にしたい文字列を表す変数です。一方、変数 args に、nameやageに代入する文字列を定義します。
テンプレートと代入する文字列群を、SimpleTemplateEngineのメソッドに渡すことで、最終的な文字列が生成されます。実行結果は以下のようになります。
$ groovy SimpleTemplateSample
My name is Taro,
I am 18 years old.
I love Groovy!
以下のサンプル SimpleTemplateSample2.groovy は、テンプレートをファイルから取得します。
import groovy.text.SimpleTemplateEngine

def args = ["name":"Taro", "age":"18", "lang":"Groovy"]

def f = new File('template.txt')
def engine = new SimpleTemplateEngine()
text = engine.createTemplate(f).make(args)

println(text)
template.txtの内容は、以下のとおりです。
My name is $name,
I am <% print age %> years old.
I love ${lang}!
実行すると、先ほどと同じ結果が得られます。
$ groovy SimpleTemplateSample2
My name is Taro,
I am 18 years old.
I love Groovy!
広告
お問い合わせは sweng.tips@gmail.com まで。
inserted by FC2 system