gpt4 book ai didi

java - 读取 UTF-8 - BOM 标记

转载 作者:IT老高 更新时间:2023-10-28 20:21:08 27 4
gpt4 key购买 nike

我正在通过 FileReader 读取文件 - 该文件是 UTF-8 解码的(带有 BOM)现在我的问题是:我读取了文件并输出了一个字符串,但遗憾的是 BOM 标记也被输出了。为什么会出现这种情况?

fr = new FileReader(file);
br = new BufferedReader(fr);
String tmp = null;
while ((tmp = br.readLine()) != null) {
String text;
text = new String(tmp.getBytes(), "UTF-8");
content += text + System.getProperty("line.separator");
}

在第一行之后输出

?<style>

最佳答案

在 Java 中,您必须手动使用 UTF8 BOM(如果存在)。此行为记录在 Java 错误数据库中,herehere .目前还没有修复,因为它会破坏现有的工具,如 JavaDoc 或 XML 解析器。 Apache IO Commons提供了一个 BOMInputStream 来处理这种情况。

看看这个解决方案:Handle UTF8 file with BOM

关于java - 读取 UTF-8 - BOM 标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4897876/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com