0

Apache Velocity フレームワークを使用して、電子メール テンプレート形式を .vm ファイルに保存しています。これらのメールには漢字のコンテンツが含まれています。Java で取得して String として表示すると、漢字はクエスチョン マークになります。

このコードを使用して、コンテンツを文字列に抽出します

VelocityEngine engine = new VelocityEngine();
engine.setProperty(RuntimeConstants.RESOURCE_LOADER, "classpath");
engine.setProperty("classpath.resource.loader.class", ClasspathResourceLoader.class.getName());
engine.init();
VelocityContext context = new VelocityContext();
context.put("params", params);
StringWriter writer = new StringWriter();
Template template = engine.getTemplate("testfile.vm","UTF-8");
template.merge(context, writer);
String message = writer.toString();
System.out.println(message);

System.out で実際の漢字を確認したい場合はどうすればよいでしょうか。

PS: 以下の行が機能しなかったため、これは他のスレッドとは異なります。

Template template = Velocity.getTemplate("testfile.vm", "UTF-8");

「UTF-8」を追加しても、印刷すると漢字がクエスチョン マークに変わる

4

0 に答える 0