java - 我有一个 htm 文件,我可以将它读取为 UTF-8 格式的文件而不对该文件做任何操作吗

标签 java

我有一个 htm 文件,我可以在不对文件做任何操作的情况下将其读取为 UTF-8 格式的文件吗? 该文件以 unicode 格式保存(不确定)我想将其作为 UTF-8 文件读取,否则它会给我一些框。这必须使用 java

FileReader loInput = new FileReader(loFile); 
BufferedReader loBufferReader = new BufferedReader(loInput); 
String loLine; // String that holds current loFile loLine 
int loCount = 0; // Line number of loCount 
loLine = loBufferReader.readLine(); 
loCount++; 
while (loLine != null) { 
    loContent = loContent.concat(loLine); 
    loLine = loBufferReader.readLine(); 
    loCount++; 
} 
loBufferReader.close(); 

我试过了

编辑:我必须从 HTML 文件中获取数据并将其转换为 DOM 对象以供进一步处理

我正在使用

SAXBuilder loSaxBuilder=new SAXBuilder();
            Reader loStringReader=new StringReader(loContent);
            Document loDoc=loSaxBuilder.build(loStringReader);
            XPath loXpath = XPath.newInstance("/Div");
            Element loElement = (Element) loXpath.selectSingleNode(loDoc);

将其转化为dom对象

最佳答案

首先,Unicode 不是一种编码,而是一个编码家族,UTF-8 就是其中之一。

其次,你可以使用类似的东西

Reader in = new BufferedReader(new InputStreamReader(new FileInputStream(file), "UTF-8"));

然后循环读取in并附加到StringBuilderCharBuffer,或者写入StringWriter,但使用 IOUtils.toString(InputStream,String) from Apache Commons IO 可能对您来说最简单,我推荐。

关于java - 我有一个 htm 文件,我可以将它读取为 UTF-8 格式的文件而不对该文件做任何操作吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4427847/

相关文章:

Java 小程序无法在浏览器中运行 - 使用图像文件

Java 更新 : On LInux Mint the openjdk package doesn't update to the latest stable version

java - 尝试将从图形 API 调用的字符串放入数据库 sq-lite,但数据库中的值为 null

java - Java 中继承常量的最佳实践是什么?

java - 无法获取客户的费用 list

java - Wicket 口更改标签/文本字段值

Java BufferedImage如何知道一个像素是否透明

java - null 替代返回整数的方法

java - 互相关 : Android AudioRecord create sample data for TDoA

java - GlassFish v3 和 glassfish-maven-plugin (Mac)