当前位置: 首页 > news >正文

搜索网站存在的关键字网站开发的地图接口

搜索网站存在的关键字,网站开发的地图接口,百度云盘官网,网易云服务器目录 比如: 打包命令使用utf-8编码: 1.当在idea中编写的程序,运行一切正常.但是当被打成jar包时,执行的程序会中文乱码.产生问题的原因和解决方案是什么呢? 一.问题分析 分别使用idea和jar包形式打印出System中所有的jvm参数---代码如下: public static…

目录

比如: 打包命令使用utf-8编码:


1.当在idea中编写的程序,运行一切正常.但是当被打成jar包时,执行的程序会中文乱码.产生问题的原因和解决方案是什么呢?

一.问题分析
分别使用idea和jar包形式打印出System中所有的jvm参数---代码如下:

public static void main(String[] args) {printEnv();//读取excelExcelUtil.simpleRead(Constant.EXCEL_PATH, AddedTax.class, 0, new AddedTaxListenner());}private static void printEnv(){//获取环境变量Map<String, String> envs = System.getenv();envs.forEach( (key,value) ->{//System.out.println("env---key是: "+key +" ; "+"env---value是: "+ value);});//获取jvm属性Properties properties = System.getProperties();properties.forEach((key, value) -> {System.out.println("jvm---key是: "+key +" ; "+"jvm---value是: "+ value);});}


 
 

idea的打印结果:

jvm---key是: user.name ; jvm---value是: ZHULIBIN10
jvm---key是: file.encoding ; jvm---value是: UTF-8
jvm---key是: java.specification.version ; jvm---value是: 1.8
jvm---key是: java.awt.printerjob ; jvm---value是: sun.awt.windows.WPrinterJob
jvm---key是: user.timezone ; jvm---value是: Asia/Shanghai
jvm---key是: user.home ; jvm---value是: C:\Users\zhulibin10
jvm---key是: os.version ; jvm---value是: 10.0
jvm---key是: sun.management.compiler ; jvm---value是: HotSpot 64-Bit Tiered Compilers
jvm---key是: java.specification.name ; jvm---value是: Java Platform API Specification
jvm---key是: java.class.version ; jvm---value是: 52.0

jar包的打印结果:

 如上图所示:

 问题就在这里,当使用idea时候,file.encoding的值是UTF-8; 使用jar包运行则file.encoding的值是GBK,这是导致乱码的直接原因.

java 乱码问题解决: -Dfile.encoding=UTF-8
 

-Dfile.encoding 解释:
在命令行中输入 java,在给出的提示中会出现 -D 的说明:
-D<name>=<value> # set a system property
-D 后面需要跟一个键值对,作用是设置一项系统属性
对 -Dfile.encoding=UTF-8 来说就是设置系统属性 file.encoding 为 UTF-8
那么 file.encoding 什么意思?字面意思为文件编码。
搜索 java 源码,只能找到 4 个文件中包含 file.encoding 的文件,
也就是说,只有四个文件调用了 file.encoding 这个属性。
在 java.nio.charset 包中的 Charset.java 中,这段话的意思说的很明确了。
简单说就是默认字符集是在 java 虚拟机启动时决定的,
依赖于 java 虚拟机所在的操作系统的区域以及字符集。
代码中可以看到,默认字符集就是从 file.encoding 这个属性中获取的。

二.问题解决总结:

 不管在任何平台,启动jar包的方式: java -jar  -Dfile.encoding=utf-8 YourName.jar

比如: 打包命令使用utf-8编码:

java -jar  -Dfile.encoding=utf-8 项目包名字.jar


三.解决cmd格式下输出乱码:
可写一个启动bat,将start.bat改为java -jar  -Dfile.encoding=utf-8 YourName.jar,问题就可以轻松解决。

如果还未解决,请修改cmd程序的编码注册表信息:

对于编译出的程序,在 cmd 和 power shell 运行时都不能正确显示汉字。 
网上查,可以再命令窗口修改: 
1、打开CMD.exe命令行窗口 
2、通过 chcp命令改变代码页,UTF-8的代码页为65001 
chcp 65001 
执行该操作后,代码页就被变成UTF-8了。
在当前窗口的确可以解决问题,但是重新打开的cmd窗口或者power shell 窗口仍然不能正确显示汉字。

————————————————
版权声明:本文为CSDN博主「魔都Thomas」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_42058242/article/details/114933003 

http://www.yayakq.cn/news/876883/

相关文章:

  • wordpress自动加内链萌新seo
  • 如何把网站做好最近最新手机中文大全8
  • 毕业设计网站设计说明书湖南网站建设 搜搜磐石网络
  • 后台网站开发文档建设局网站项目负责人资质要求
  • 检察院门户网站建设成效凡科董事长
  • 2017网站建设网站改版 报价
  • 华为公司电子商务网站建设策划书免费的素材网站推荐
  • 电商网站方案建设有了自己的网站怎么赚钱
  • 怎么做点击图片进网站手机开网店
  • 旅游网站设计说明软装公司网站建设
  • 北京网站建设价钱上海网站建设到诺然
  • win2008 iis建网站靳刘高设计公司官网
  • 企业网站建设之域名篇金山区网站建设
  • 南京网站专业制作不属于网络营销的推广手段是什么
  • 智能建站软件邢台做网站动态
  • 网站建设征求意见表深圳建设厅官方网站
  • 做微信广告网站wordpress结合cms
  • 成都创建公司网站手机网站建设服务商
  • 丘里奇网站排名百度搜索网站怎么做
  • 新手做网站需要多久百度上怎么发布作品
  • 做网站的费属于什么费用wordpress 登录后查看
  • 只做女性的网站制作器
  • 如何建设淘宝网站首页爱淘宝网页网站建设
  • 信誉比较好的网上做任务的网站wordpress域名地址设置
  • 不同网站建设特点数据共享网站建设
  • 天津做网站优化公司谷歌seo详细教学
  • 中国建设银行网站下载简述seo的优势
  • 高端品牌网站建设在哪济南兴田德润优惠吗精准营销的核心是什么
  • 深圳龙岗网站建设公司格格导航官网
  • 响应式 网站建设分析凡客诚品失败的原因