【发布时间】:2012-11-05 21:07:33
【问题描述】:
以下是我的代码快照,输入文件大小为 45 Mb
Scanner fileScanner = new Scanner(file);
String scannedFarm;
try{
Pattern p = Pattern.compile("^(?:.+(?:\\r?\\n|\\Z)){2,}",Pattern.MULTILINE);
while((scannedFarm = fileScanner.findWithinHorizon(p, 0)) != null){ // Throws Exception
...
...
我将添加任何其他信息,以阐明引发异常的原因。 描述文件格式的相关问题可能会有所帮助:Java, Regular Expression HasNext starts with empty line, multi-platform support。
顺便说一句:这适用于像魅力这样的小文件,在较大的文件中失败,字符串是否具有从 findWithinHorizon 返回的最大大小?
更新
根据要求提供一个小的堆栈跟踪:
还有一个文件快照的小例子:
【问题讨论】:
-
请发布堆栈跟踪。不是吗?
-
Stackoverflow 是询问堆栈溢出问题的正确地方!抱歉,无法抗拒。
标签: java regex exception java.util.scanner