[我正在尝试让我的代码从文本文件中读取,并将其中的内容存储为变量..strings和doubles ...以备后用。我没问题让它返回信息。
这是.txt文件中的内容:
circle 5
triangle 3
square 10
sphere 5
cube 4
tetrahedron 8
还有我的代码:
BufferedReader reader;
try {
reader = new BufferedReader(new FileReader(
"src/Data.txt"));
String line = reader.readLine();
while (line != null) {
System.out.println(line);
// read next line
line = reader.readLine();
}
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
据我所知,不可能构造一个变量名。您无法阅读“圆圈”并将其分配为变量名称。您可以使用HashMap<String,Double>
将它们存储为[键,值]对。
第一部分将使用String.split
分割行以分隔变量名称和值。如果事先知道在文本文件中需要哪些变量,则可以声明这些变量并使用switch
语句来确定读取名称对应于哪个变量,并相应地分配值。否则,可以使用HashMap
或类似的名称来存储在文件中找到的名称和值。
BufferedReader reader;
HashMap<String,Double> vars = new HashMap<>();
try {
reader = new BufferedReader(new FileReader(
"src/Data.txt"));
String line = reader.readLine();
while (line != null) {
System.out.println(line);
String[] lineVars = line.split(" ");
vars.put(lineVars[0],Double.parseDouble(lineVars[1]));
// read next line
line = reader.readLine();
}
reader.close();
}catch (IOException e) {
e.printStackTrace();
}