在做接口测试中遇到了一个加密的问题。一个业务线对接口进行了RSA+AES的加密。
于是写了个加密解密的小工具,来对接口参数进行分析。
过程中发现在eclipse中调试好好的,打包成jar包后再执行其中的中文就乱码了:
解决方法:在执行的时候加上 -Dfile.encoding=utf-8 参数指定编码即可。
分析:
-Dfile.encoding
在命令行中输入 java,在给出的提示中会出现 -D 的说明:
-D=
-D 后面需要跟一个键值对,作用是设置一项系统属性
对
那么
搜索 java 源码,只能找到 4 个文件中包含
也就是说,只有四个文件调用了
在
简单说就是默认字符集是在 java 虚拟机启动时决定的,
依赖于 java 虚拟机所在的操作系统的区域以及字符集。
代码中可以看到,默认字符集就是从