• 获取jdk编码字符


    最近一个项目在idea上编译正常运行,部署到正式环境中出现中文乱码,通过运行下面的代码发现jdk编码是GBK而我的编译是UTF-8

    import java.io.ByteArrayOutputStream;
    import java.io.OutputStreamWriter;
    import java.nio.charset.Charset;
     
    class Test {
        public static void main(String[] args) {
            System.out.println("Default Charset=" + Charset.defaultCharset());
            System.out.println("file.encoding=" + System.getProperty("file.encoding"));
            System.out.println("Default Charset=" + Charset.defaultCharset());
            System.out.println("Default Charset in Use=" + getDefaultCharSet());
        }
     
        private static String getDefaultCharSet() {
            OutputStreamWriter writer = new OutputStreamWriter(new ByteArrayOutputStream());
            String enc = writer.getEncoding();
            return enc;
        }
     
    }

     方案一:在编译的时候加个 -Dfile.encoding=UTF-8

     我写了个.bat脚本

    @echo off
    
    start java  -Dfile.encoding=utf-8  -jar demo-0.0.1-SNAPSHOT.jar
    
    exit

    方案二:配置环境变量

     

     然后运行刚才的代码

  • 相关阅读:
    简单的进度条程序
    python装饰器
    冒泡,递归
    实现随机验证码
    三木运算,三元运算
    set()集合
    list()列表
    python3.5 Str类型与bytes类型转换
    说说编码与转义的区别
    Java 中字符编码相关的问题解析
  • 原文地址:https://www.cnblogs.com/lovetl/p/13571017.html
Copyright © 2020-2023  润新知