【发布时间】:2011-04-20 22:21:26
【问题描述】:
我试图理解的 java 文件中的一行如下。
return new Scanner(file).useDelimiter("\\Z").next();
根据 java.util.regex.Pattern 文档,该文件预计将返回“输入的结尾,但对于最终终止符,如果有的话”。但发生的情况是它只返回文件中的前 1024 个字符。这是正则表达式模式匹配器施加的限制吗?这可以克服吗?目前我正在使用文件阅读器。但我想知道这种行为的原因。
【问题讨论】:
-
永远不要使用扫描仪!真的,你会遇到很多麻烦。
-
@Martijn Courteaux - 愿意提供哪怕是最轻微的提示,说明 Scanner 为何不好?
标签: java regex file-io java.util.scanner filereader