如何使记事本在没有BOM的情况下以UTF-8保存文本?
我有一个带有特殊重音的CSV文件,并通过选择UTF-8编码将其保存在记事本中。当我使用Java读取文件时,它也会读取BOM表字符。
因此,我想以UTF-8格式保存此文件,而不必最初在记事本中附加BOM。
否则,Java中是否有内置类可以消除读取文件内容时开头出现的BOM字符?
回答:
使用Notepad -免费且比Notepad好得多。使用Enconding > 在没有BOM的UTF-8中进行编码,将有助于在没有BOM的情况下保存文本: Notepad 菜单栏>编码>在Notepad ++ v6.7.9.2中使用无BOM菜单的UTF-8中进行编码的屏幕快照
当我在Java中遇到此问题时,我没有找到任何库来解析前三个字节(BOM)。所以我的建议是:
使用PushbackInputStream(in, 3)。
- 读取前三个字节
- 如果不是BOM(EF BB BF),请将其推回
- 以UTF-8处理流
以上是 如何使记事本在没有BOM的情况下以UTF-8保存文本? 的全部内容, 来源链接: utcz.com/qa/430526.html