java - Java 编码问题
问题描述
在 Java JDK 9 String s = "एक गाव में एक किसान" 定义以下字符串时,它会引发以下错误: Unmappable character (0xE0) for encoding US-ASCII 我知道它是 UTF-8 编码的,但因为 JDK 9 有默认值字符集设置为 US-ASCII 但我找不到如何将默认字符集从代码本身更改为 UTF-8?
解决方案
我想从代码中更改默认字符集
不可能1。
源代码只是文本,它没有定义用于存储该文本的编码。
但是,您可以通过将所有非 ASCII 字符指定为 Unicode 转义符来确定您的源代码是 US-ASCII,因此编码无关紧要(不包括 UTF-16、UTF-32 等):
String s = "\u090f\u0915 \u0917\u093e\u0935 \u092e\u0947\u0902 \u090f\u0915 \u0915\u093f\u0938\u093e\u0928"
当然,很难知道字符串在说什么。
1)由于Java不支持BOM。
推荐阅读
- python - 如何在pytube3中使用进度条
- java - 日志文件中没有打印日志,但它正在打印在 cosole [log4j]
- python - Python 3 已安装,但 python -V 返回 python 2
- javascript - 无法使用 AWS Lambda 服务从 AWS cognito 获取用户信息
- go - 致命错误:所有 goroutine 都处于休眠状态 - 死锁!goroutine 1 [semacquire]:
- excel - 从字符串公式返回文件夹名称
- node.js - 如何在 CentOS 中安装 nodejs
- html - 使用ngFor条件时如何不在dom中显示
- string - Lua 字符串匹配/查找
- javascript - 在 ES6 中修改选定对象的值