第2世界
发布于 2024-05-03 / 5 阅读 / 0 评论 / 0 点赞

Windows运行打包的jar文件,存入数据库乱码报错

在IDE(idea)中运行正常,但是在打包后运行部分代码乱码报错。原因是Windows平台默认编码gbk,在IDE中file.encoding为UTF-8,但是打包后file.encoding为gbk。通过添加-Dfile.encoding部分电脑识别,win7未成功。

public class FileEncodeTest {
    public static void main(String[] args) {
        System.out.println("file.encoding : "+System.getProperty("file.encoding"));
        System.out.println("sun.jnu.encoding : "+System.getProperty("sun.jnu.encoding"));
    }
}

上面代码可以输出file.encoding

目前解决办法是在涉及到字符串编码的时候对字节数组使用new String()转成字符串解决。另外可以尝试-Dfile.encoding=UTF-8


评论