linux环境下,java代码生成html文件,中文乱码,相关的代码如下:

StringBuffer sb = new StringBuffer();
		sb.append(declare);
		sb.append(head);
		sb.append(bodyFront);
		sb.append(bodyChange);
		String output = null;
		try {
			output = URLDecoder.decode(sb.toString(), "UTF-8");
		} catch (UnsupportedEncodingException e1) {
			e1.printStackTrace();
		} 
		File file = new File(monitorDir + File.separator +"target.html");
		FileWriter fw = null;
		if (file.exists()) {
			file.delete();
		}
		try {
			file.createNewFile();
			fw = new FileWriter(file);
			fw.write(output);
			fw.flush();
		} catch (IOException e) {
			e.printStackTrace();
		} 
生成的文件中添加utf8的声明无效


解决方案:

在jvm的opts上面加上如下内容,问题解决

-Dfile.encoding=UTF-8

Logo

更多推荐