首先要确定目标,最后输出的HTML页面的编码是UTF-8,所以生成的HTML中,头部需要存在一条这样的信息
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
然后,确定模板也就是ftl文件的编码一定是UTF-8编码
接着,必须用GBK的编码去读取模板目录
---------------------------------------------------------start
// 加载模板目录
Configuration cg = new Configuration();
//以"GBK"的形式去加载模板目录
cg.setDefaultEncoding("GBK");
---------------------------------------------------------end
再用,GBK的编码去读取模板文件
---------------------------------------------------------start
// 加载模板
Template t1 = cg.getTemplate("HTML2.ftl");
//以"GBK"的形式读取模板
t1.setEncoding("GBK");
---------------------------------------------------------end
最后输出文件的方式一定要用UTF-8去输出
---------------------------------------------------------start
// 创建输出对象
File tagFile = new File(inter_folder_file, "a.html");
//以UTF-8的形式输出文件
Writer out = new PrintWriter(tagFile,"UTF-8");
---------------------------------------------------------end
最后输出的生成的HTML页面编码是UTF-8,在浏览器不会出现任何乱码