自从我将.dat
个文件输入Java
程序以来已经过去几年了,现在我需要这个项目。我记得当时我使用的是Scanner
课程,但通过互联网寻找解决方案,似乎有很多选择;我之前从未使用的BufferedReader
和FileStream
类,或者至少不记得使用..无论如何,我的问题是:
如果我正在阅读以下格式的.dat文件:
998763264 EGCDGHIJJ
697724736 GDHECHHJG
etc.
您建议我实施哪些class(es)
来处理此输入? /你能给我一个用来读文件的例子吗?
非常感谢你的帮助。
答案 0 :(得分:2)
我可以建议使用FileInputStream和InputStreamReader。
您可以在本教程中找到一个用法示例:http://tutorials.jenkov.com/java-io/inputstreamreader.html
在您的示例中,您可以使用reader.read(char [] cbuf,int off,int len)方法来专门读取所需的字符块。
答案 1 :(得分:2)
如果您的.dat文件是包含您提供的模式的文本文件,则Scanner似乎是一个很好的解决方案。
试试这段代码:
Scanner sc = new Scanner(new File("test.dat"));
Pattern p = Pattern.compile("([\w\d]*)\s*");
while (sc.findWithinHorizon(p, 0) != null)
{
MatchResult m = sc.match();
System.out.println(m.group(1));
}