0

这是我在此的头一篇博文。我很高兴终于参加了。

我正在一个项目中解析晦涩的文件类型。我需要能够解析 word(我已经做过)、.sbs、.day、.cmp 等等。所有这些类型都可以简单地用记事本打开并显示出来。

由于我对这些东西很陌生,有没有办法可以使用一些通用库(或两个)来打开所有这些?如果是这样,它会是什么图书馆?

在这种情况下,最佳做法是什么?

谢谢!

4

1 回答 1

0

您可以使用Apache Commons IO库。FileUtils类有几个方法可以接收文件路径和可选的文件编码。

如果您只想读取文本文件并将它们保存到文本变量

java.io.File file = new java.io.File("C:\\dir\\file.cmp");
String allWordAndLines = org.apache.commons.io.FileUtils.readFileToString(file);

如果您想要单独的每一行并将它们存储在一个集合中:

java.util.List<String> lines = org.apache.commons.io.FileUtils.readLines(file);
for(String line : lines) {
    // do something with line
}

要指定编码,您需要添加另一个参数:

org.apache.commons.io.FileUtils.readFileToString(file, "UTF-8");
org.apache.commons.io.FileUtils.readLines(file, "Cp1252");

Java 包括几个用于读取文件的类,请参阅http://docs.oracle.com/javase/tutorial/essential/io/index.html中的更多内容

如果您只想让您的文本文件在内存中可用,我希望这可以帮助您。

于 2012-05-18T18:34:44.283 回答