我想使用 java 计算文件的行数,我使用的代码是:
String[] wcCommand = new String[]{"/usr/bin/wc","-l" , filePath};
Process wcProcess=Runtime.getRuntime().exec(wcCommand);
wcProcess.waitFor();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader( wcProcess.getInputStream()));
String numberOfRowsline;
while((numberOfRowsline = bufferedReader.readLine()) != null) {
System.out.print(numberOfRowsline);
}
如果我有 5000000 行的大文件,则命令返回错误的数字。为什么会发生这种情况?当我直接从终端执行命令时,返回的值是正确的。
java的输出是:3288079 /PathToFile
终端的输出:5000000 /PathToFile