我如何告诉方法搜索65个浮点(或双值)的模式,所有这些都在文本文件的一行中,使用文件读取器读取,然后使用缓冲读取器读取扫描器。
这样的方法:
findWithinHorizon(Pattern pattern, int Horizon);
返回该行中的所有65个浮点值?
(findWithinHorizon是Java.util.Scanner类的一个方法,如果有帮助的话)
答案 0 :(得分:0)
您不需要使用findWithinHorizon()
方法,也不需要使用正则表达式。您可以使用Scanner
类中的简单方法和一些循环来完成此操作。首先,创建一个新的Scanner,其源代码是要读取的行:
<击> 撞击>
Scanner file = new Scanner("myFile.txt");
for(int i = 1; i < lineNumberToRead; ++i)
file.nextLine();
Scanner line = new Scanner(file.nextLine());
击> <击> 撞击>
然后,创建数组并从line
获取值:
double[] array = new double[65];
for(int j = 0; j < array.length && line.hasNextDouble(); ++j)
array[j] = line.nextDouble();
编辑:由于您说有一个令牌,其中65位小数开始,请使用以下代码示例替换此答案中的第一个代码示例:
Scanner file = new Scanner("myFile.txt");
file.useDelimiter(tokenBeforeDecimals);
file.next();
Scanner line = new Scanner(file.nextLine());