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

Java 中文乱码(UTF-8 源文件 + javac 默认 GBK)解决笔记

一、乱码根本原因

  1. 你的操作:记事本将Hello.java保存为UTF-8 编码
  2. Windows 下javac编译器默认读取源码编码为 GBK(跟随系统区域编码)
  3. 源码编码 (UTF-8) ≠ 编译读取编码 (GBK),中文字节解析错位,运行控制台出现乱码

二、两种标准解决方法

方法 1:编译命令强制指定 UTF-8(推荐,无需改动文件)

编译时追加参数-encoding UTF-8,告诉编译器以 UTF-8 读取源码文件

cmd

# 完整编译语句 javac -encoding UTF-8 Hello.java # 运行(你的主类名是A) java A

优势:文件维持标准 UTF-8,跨 Windows/Linux/Mac 都不会乱码,是开发通用写法。

方法 2:修改源文件编码为 ANSI(Windows 本地兼容方案)

记事本操作步骤:

  1. 顶部菜单栏【格式 (O)】→【另存为】
  2. 保存弹窗底部「编码」下拉框选择ANSI
  3. 覆盖原文件保存后,直接用普通编译命令即可

cmd

javac Hello.java java A

缺点:ANSI 是 Windows 专属编码,文件放到其他操作系统会再次出现中文乱码,仅适合本地临时测试。

http://www.gsyq.cn/news/1594688.html

相关文章:

  • 一线品牌显卡有哪些:市场格局观察
  • Anthropic Managed Agents 解读:长任务 Agent 为什么要解耦 brain、hands 和 session
  • OWASP Top 10 2025实战指南:从漏洞原理到防御体系构建
  • 抖音批量下载完整指南:从零到精通的高效内容获取方案
  • Mod Organizer 2终极指南:从零开始掌握游戏模组管理的完整教程
  • 5分钟掌握diff-pdf:免费开源的PDF差异检测终极指南
  • 3个步骤让Figma界面秒变中文:设计师的母语工作流革命
  • PDF文档差异检测技术方案:自动化对比与可视化验证的工程实践
  • Qwerty Learner终极指南:如何用免费开源软件同时提升打字速度和英语词汇量
  • Tomcat会话反序列化漏洞CVE-2025-24813原理分析与复现
  • Mapper算法有效性验证:基于协方差保持高斯零模型的拓扑结构显著性检验
  • Python金融数据分析利器:mootdx通达信数据完整使用指南
  • OpenAI流式响应全链路实战:从超时控制到容错降级
  • 半导体测试座接触不良问题分析与优化方案
  • 5分钟终极指南:如何用FigmaCN让设计界面秒变中文
  • 如何5分钟安装DeepL翻译插件:免费浏览器扩展助你轻松翻译网页内容
  • Windows Docker Desktop 环境下 RabbitMQ 生产级部署完整指南
  • 如何免费获得专业绘图工具?Draw.io桌面版终极指南
  • 如何快速掌握Kinovea视频分析:面向初学者的完整运动分析指南
  • RAG优化的多路召回-混合检索
  • 外区域拉格朗日平均曲率方程:解的存在性、渐近行为与关键技术分析
  • 如何通过代理抓包技术实现跨平台网络资源下载
  • FreeClip2音质变糊?原来是出音孔堵住了!
  • 番茄小说下载器架构解析:基于Rust的高性能离线阅读解决方案
  • SNK施努卡GCU控制器自动化产线:120秒节拍,5人完成高节拍智造
  • 芯片干货 |异步内置MOS升压恒压芯片 FP6291,最高输出5-12V/5-7W,输入限流可调
  • 判断提质,而非加速漏斗:AI招聘正在重写HR的核心能力坐标
  • 【每日复盘与反思】2026.6.23
  • 深挖 GEO 技术底层逻辑,展望 2026 年行业技术迭代新方向
  • 科技驱动型亚洲EMBA理性测评与科学选型指南