gpt4 book ai didi

java - 使用 DocumentBuilder 解析 InputStreamReader

转载 作者:行者123 更新时间:2023-12-02 07:47:37 25 4
gpt4 key购买 nike

我的 Java 经验很少。我试图强制将文档读取为 UTF-8,但在尝试将 InputStream 阅读器连接到文档生成器时遇到了困难。

这是我到目前为止所拥有的:

import javax.xml.xpath.*;
import javax.xml.parsers.*;
import org.w3c.dom.*;


if( pathToFile == null ) throw new Exception("You must supply a pathToFile parameter");

DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder();

InputStreamReader in = new InputStreamReader( new FileInputStream( pathToFile ), "utf-8" );

BufferedReader reader = new BufferedReader ( new InputStreamReader ( in ) );

Element records = builder.parse(reader).getDocumentElement();

如果有人能给我一些指导,我将不胜感激

最佳答案

不要将 InputStreamReader 包裹在 InputStreamReader 周围。 (编辑此外,由于没有方法从 Reader 解析 XML,因此您需要将 reader 包装在 InputSource 中):

if( pathToFile == null )
throw new Exception("You must supply a pathToFile parameter");

DocumentBuilder builder = DocumentBuilderFactory.newInstance()
.newDocumentBuilder();

InputStreamReader in = new InputStreamReader(
new FileInputStream( pathToFile ), "utf-8" );

BufferedReader reader = new BufferedReader ( in ); // CHANGED

InputSource input = new InputSource(reader);

Element records = builder.parse(input).getDocumentElement();

关于java - 使用 DocumentBuilder 解析 InputStreamReader,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8537271/

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