IDEA学习系列:查看lib源码显示乱码的解决方式

2024-08-28 12:48

本文主要是介绍IDEA学习系列:查看lib源码显示乱码的解决方式,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 场景
  • 环境
  • 正文
    • 原因
    • 解决方案
      • 一、打开setting
      • 二、修改全局编码
      • 三、验证
      • 说明
  • 总结
  • 随缘求赞

场景

使用idea进行开发代码,有时候需要查看依赖的lib包的源码。但是因为项目是老项目,编码是GBK。所以打开会显示乱码。没办法直接通过点击右下角的编码切换来进行更新。如下图:
在这里插入图片描述
本篇博文主要是讲述该解决方案。

环境

软件版本
IntelliJ IDEA2020.2 EAP

正文

原因

为什么会乱码呢?究其原因,就是用不合适的编码打开了文件,所以显示乱码。而我们打开lib查看源码的时候,idea会默认使用全局编码打开lib的源码。假如全局编码是设置了UTF-8,而源码编码是GBK。那打开就是会显示乱码。而因为lib包的源码是不可编辑的,所以源码那里的编码转换按钮是不可编辑的。

解决方案

如果细心的看官,已经看到关键点:全局编码。所以,我们将项目的全局编码改为lib包对应的编码格式即可。

一、打开setting

打开setting,搜索框输入“encoding”,选择“File encoding”,如下图:
在这里插入图片描述

二、修改全局编码

将全局编码修改为lib包对应的编码。我们这里lib包的编码格式是GBK,所以修改为GBK,然后点击“APPLY”按钮之后,最后点击“OK”按钮。如下图:
在这里插入图片描述

三、验证

重新打开刚刚乱码的文件,这次不乱码,截图如下:
在这里插入图片描述

说明

如果没有变动,则需要点击“File-》File Properties-》File Encoding”,显式地将编码改为GBKidea版本存在差异,位置可能不一样。请自行搜索。

总结

什么问题都至少有一个原因导致其发生的。所以多思多想!

随缘求赞

如果我的文章对大家产生了帮忙,可以在文章底部点个赞或者收藏;
如果有好的讨论,可以留言;
如果想继续查看我以后的文章,可以点击关注
可以扫描以下二维码,关注我的公众号:枫夜之求索阁,查看我最新的分享!
在这里插入图片描述
拜拜

这篇关于IDEA学习系列:查看lib源码显示乱码的解决方式的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1114815

相关文章

Linux如何查看文件权限的命令

《Linux如何查看文件权限的命令》Linux中使用ls-R命令递归查看指定目录及子目录下所有文件和文件夹的权限信息,以列表形式展示权限位、所有者、组等详细内容... 目录linux China编程查看文件权限命令输出结果示例这里是查看tomcat文件夹总结Linux 查看文件权限命令ls -l 文件或文件夹

解决pandas无法读取csv文件数据的问题

《解决pandas无法读取csv文件数据的问题》本文讲述作者用Pandas读取CSV文件时因参数设置不当导致数据错位,通过调整delimiter和on_bad_lines参数最终解决问题,并强调正确参... 目录一、前言二、问题复现1. 问题2. 通过 on_bad_lines=‘warn’ 跳过异常数据3

idea的终端(Terminal)cmd的命令换成linux的命令详解

《idea的终端(Terminal)cmd的命令换成linux的命令详解》本文介绍IDEA配置Git的步骤:安装Git、修改终端设置并重启IDEA,强调顺序,作为个人经验分享,希望提供参考并支持脚本之... 目录一编程、设置前二、前置条件三、android设置四、设置后总结一、php设置前二、前置条件

解决RocketMQ的幂等性问题

《解决RocketMQ的幂等性问题》重复消费因调用链路长、消息发送超时或消费者故障导致,通过生产者消息查询、Redis缓存及消费者唯一主键可以确保幂等性,避免重复处理,本文主要介绍了解决RocketM... 目录造成重复消费的原因解决方法生产者端消费者端代码实现造成重复消费的原因当系统的调用链路比较长的时

Debian系和Redhat系防火墙配置方式

《Debian系和Redhat系防火墙配置方式》文章对比了Debian系UFW和Redhat系Firewalld防火墙的安装、启用禁用、端口管理、规则查看及注意事项,强调SSH端口需开放、规则持久化,... 目录Debian系UFW防火墙1. 安装2. 启用与禁用3. 基本命令4. 注意事项5. 示例配置R

深度解析Nginx日志分析与499状态码问题解决

《深度解析Nginx日志分析与499状态码问题解决》在Web服务器运维和性能优化过程中,Nginx日志是排查问题的重要依据,本文将围绕Nginx日志分析、499状态码的成因、排查方法及解决方案展开讨论... 目录前言1. Nginx日志基础1.1 Nginx日志存放位置1.2 Nginx日志格式2. 499

SpringBoot监控API请求耗时的6中解决解决方案

《SpringBoot监控API请求耗时的6中解决解决方案》本文介绍SpringBoot中记录API请求耗时的6种方案,包括手动埋点、AOP切面、拦截器、Filter、事件监听、Micrometer+... 目录1. 简介2.实战案例2.1 手动记录2.2 自定义AOP记录2.3 拦截器技术2.4 使用Fi

最新Spring Security的基于内存用户认证方式

《最新SpringSecurity的基于内存用户认证方式》本文讲解SpringSecurity内存认证配置,适用于开发、测试等场景,通过代码创建用户及权限管理,支持密码加密,虽简单但不持久化,生产环... 目录1. 前言2. 因何选择内存认证?3. 基础配置实战❶ 创建Spring Security配置文件

kkFileView启动报错:报错2003端口占用的问题及解决

《kkFileView启动报错:报错2003端口占用的问题及解决》kkFileView启动报错因office组件2003端口未关闭,解决:查杀占用端口的进程,终止Java进程,使用shutdown.s... 目录原因解决总结kkFileViewjavascript启动报错启动office组件失败,请检查of

Python获取浏览器Cookies的四种方式小结

《Python获取浏览器Cookies的四种方式小结》在进行Web应用程序测试和开发时,获取浏览器Cookies是一项重要任务,本文我们介绍四种用Python获取浏览器Cookies的方式,具有一定的... 目录什么是 Cookie?1.使用Selenium库获取浏览器Cookies2.使用浏览器开发者工具