我有一个 .txt 文件,我想在我的程序中读取它。我必须获取购买和价格的值并将它们存储到整数数组列表中。例如:
"buy 50 price 30"
我必须将 50 插入到 ArrayList 购买中,并将 30 插入到 ArrayList 价格中。
import java.io.BufferedReader;
import java.util.StringTokenizer;
import java.io.FileReader;
import java.io.IOException;
import java.util.List;
import java.util.ArrayList;
public class Store {
public static void main(String[] args) {
BufferedReader br = null;
List <Integer> buy = new ArrayList<>();
List <Integer> price = new ArrayList<>();
// try to read the file
try {
br = new BufferedReader(new FileReader("Nets.txt"));
String line;
while ((line = br.readLine()) != null) {
line = line.trim();
line = line.replaceAll("/t", "");
line = line.toLowerCase();
StringTokenizer st = new StringTokenizer(line);
while (st.hasMoreTokens()) {
//Don't know what to do
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
最佳答案
正如评论中提到的,考虑使用String.split(regex)
而不是StringTokenizer
。
代码可能如下所示:
while ((line = br.readLine()) != null) {
line = line.trim();
line = line.replaceAll("/t", "");
line = line.toLowerCase();
// New code
String[] tokens = line.split(" ");
buy.add(Integer.valueOf(tokens[1]));
price.add(Integer.valueOf(tokens[3]));
}
这种方法还可以提供更好的性能,因为您不需要迭代未使用的 token 。
关于java - 如何在java中使用StringTokenizer将int从文件存储到Arraylist?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33722122/