2009-11-24 99 views
2

我有一个velocity/html文件。 我想包括/解析一些简单的HTML到页面中。Apache Velocity的编码问题包括

如果我只是文本直接在主文件复制,它工作得很好:

米兰达·可儿一直没有维多利亚的 秘密天使为...

如果我创建一个单独的虚拟机文件,包括它像这样:

#parse("topicoftheday/homepagenews.vm") 

我得到人品不好的垃圾:

米兰达·可儿hasn’吨是一个 Victoria’的秘密天使为

如何?为什么?

感谢

回答

5

看起来你已经使用3个编码,

  1. 在UTF-8的虚拟机文件。
  2. 速度在拉丁语-1。
  3. ANSI中的终端/ JVM。

您正在使用非ASCII撇号U + 2019。 UTF-8序列是E2 80 19,碰巧是你看到的Latin-1中显示为ANSI的3个字符。

您需要将它们全部更改为UTF-8,因为Latin-1/ANSI没有此字符。或者你应该使用ASCII撇号'。

对于速度,设置此参数,

input.encoding = UTF-8 
+0

内容来自外部RSS提要所以我不能改变撇号。但我正在考虑更改参数... – 2009-11-25 17:41:46

+0

感谢您的“input.encoding”参数 – 2012-06-10 13:40:51

+2

我们在哪里设置该参数? – acdcjunior 2014-03-19 16:27:42