下面是上传文件的截图:

1.文件是以GB2312作为编号,当上传至服务端后,编码依然是GB2312。所以一开始我尝试以GB2312编码进行转码,但是结果是失败的。
2.后来想到了写出文件的时候进行转码,成功把文件转成了UTF-8,但是会出现其他的bug,比如数字“1”会变成“1 ”。也就是多了很多空格,所以也失败了。
3.最后想到了,分割字符串,组装成对象那块,开始依然尝试使用GB2312、GBK、UTF-8依然失败,最后使用编码:ISO-8859-1 成功了。
下面是代码片段:
@Override
public Object readLineMap(String line) throws IllegalServiceException {
if (line.contains(",")) {
String xline = null;
try {
xline = new String(line.getBytes("ISO-8859-1"));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
logger(xline);
String[] strings = xline.split(",");
...........................
Linux系统可能需要这样子:
xline = new String(line.getBytes("ISO-8859-1"),"GB2312");

