我有两个文件,分别称为“ ride.in”和“ ride.out”。 “ ride.in”文件包含两行,一行包含字符串“ COMBO”,另一行包含字符串“ ADEFGA”。就像我说的那样,每个字符串在单独的行上,因此“ COMBO”在第一行,而“ ADEFGA”在“ ride.in”文件的第二行。
这是我的代码:
public static void main(String[] args) throws IOException {
File in = new File("ride.in");
File out = new File("ride.out");
String line;
in.createNewFile();
out.createNewFile();
BufferedReader br = new BufferedReader(new FileReader(in));
PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter(out)));
while ((line = br.readLine()) != null) {
StringTokenizer st = new StringTokenizer(line);
String sam =st.nextToken();
}
pw.close();
}
}
我想将COMBO分配为一个令牌,将ADEFGA分配为另一个令牌,但是在此代码中,COMBO和ADEFGA都分配给了sam字符串。如何将COMBO分配给一个字符串,如何将ADEFGA分配给另一字符串?
最佳答案
您无法创建数量可变的变量。
创建一个字符串数组列表。
更改
while ((line = br.readLine()) != null) {
StringTokenizer st = new StringTokenizer(line);
String sam =st.nextToken();
}
至
List<String> myList = new ArrayList<String>();
while ((line = br.readLine()) != null) {
StringTokenizer st = new StringTokenizer(line);
myList.add(st.nextToken());
}
现在,myList.get(0)将具有“ COMBO”,而myList.get(1)将具有“ ADEFGA”
关于java - StringTokenizer多行,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30985690/