从.txt文件读取数字并存储到JAVA变量
所以我在为工作做这个小报告。在我们的一个数据进程中,会弹出一个.txt文件,我已经设置了一个JFileChooser和GUI来选择目录。现在我已经完成了,我需要弄清楚如何将这些数字存储到变量中,这样我就可以用它们来做一些数学公式等等。我不太清楚该怎么做,因为我对java还不熟悉,对编程也不太熟悉。有人有什么方法可以做到这一点吗?我在arraylist中有这些文件。非常感谢您的帮助从.txt文件读取数字并存储到JAVA变量,java,io,report,Java,Io,Report,所以我在为工作做这个小报告。在我们的一个数据进程中,会弹出一个.txt文件,我已经设置了一个JFileChooser和GUI来选择目录。现在我已经完成了,我需要弄清楚如何将这些数字存储到变量中,这样我就可以用它们来做一些数学公式等等。我不太清楚该怎么做,因为我对java还不熟悉,对编程也不太熟悉。有人有什么方法可以做到这一点吗?我在arraylist中有这些文件。非常感谢您的帮助 FileName: ---------------Processing Summary--------------
FileName:
---------------Processing Summary---------------
1601 Records.
0 Malformed.
0 Fixed.
0 Bad.
1 Bad Lines.
1600 Good Entries.
使用BufferedReader和StringTokenizer类 BufferedReader以逐行读取文件。 StringTokenizer以空格分隔行。
在包装类上使用静态方法将数字的字符串表示形式解析为java对象。Integer.parseInt(…),Float.parseFloat(…)。将其存储在类似ArrayList的数组中,以便在读取数字时将其添加到列表中。如果这些是字符串,则始终可以将其拆分为空格字符,并将第一个值转换为数字
Map<String, Integer> counts = new HashMap<String, Integer>();
String line = "1601 Records";
String [] tokens = line.split("\\s+");
if (tokens.length > 1) {
counts.put(tokens[1], Integer.valueOf(tokens[0]));
}
Map counts=newhashmap();
String line=“1601记录”;
字符串[]标记=line.split(\\s+);
如果(tokens.length>1){
counts.put(令牌[1],Integer.valueOf(令牌[0]);
}
使用扫描仪是最简单的方法
导入java.util.Scanner
然后
Scanner myScanner=new Scanner(新文件(“/Your/File/Path/Here”);
然后
根据您的文件结构,您可以使用
myScanner.next()
和myScanner.nextInt()
要分别获取令牌和int,令牌通常是由空格分隔的单词可能是视觉的重复,因为他是编程新手,我会在建议使用scanner的基础上向他解释一些事情。他有一个文件数组列表,所以他需要迭代、读取(scanner)和解析它们(看起来它们的字符不是数字),将它们从字符串转换为适当的变量,然后对它们进行数学运算。与其向他解释所有这些,不如简单地提及它们,并将其链接到oracle文章:)我不知道他的作业的规格,所以我很难具体说明,如果你有任何解释性的网页或文章,请随意将其发布为edits@WilliamShatner
String line;
while (myScanner.hasNextLine()) {
line = myScanner.nextLine();
//parse the string for your data and store it
}