gpt4 book ai didi

java - 如何在 JavaFx 中将文本文件的行读入数组

转载 作者:行者123 更新时间:2023-12-02 01:14:15 25 4
gpt4 key购买 nike

我需要帮助读取文本文件的内容并将每一行保存为数组中的字符串。例如,文本文件包含数据:

°C
12,0
21,9

我想将每一行读入一个数组,例如:

line[0] = first_ine; //°C
line[1] = secondLine; //12,0
line[2] = thirdLine; //21,9

我的目标是能够访问我存储在数组中的任何行并将其内容打印在标签上,例如:

labelWithText.setText(line[0]);

好的。这是我的代码的一个版本,其中我尝试使用数组将文本文件的每一行存储在数组字段中。它会导致 ArrayOutOfBound 错误。

try {
input = new FileInputStream(new File("DataFiles/myData.txt"));

CharsetDecoder decoder = Charset.forName("ISO-8859-1").newDecoder();
decoder.onMalformedInput(CodingErrorAction.IGNORE);
InputStreamReader reader = new InputStreamReader(input, decoder);

BufferedReader buffReader = new BufferedReader(reader);
StringBuilder stringBuilder = new StringBuilder();
String line = buffReader.readLine();

int i = 0;
String lineContent[] = line.split("\n");

while(line != null) {
stringBuilder.append(line).append(System.getProperty("line.separator"));
line = buffReader.readLine();

lineContent[i] = line;
i++;
}

buffReader.close();

nomDataLabel.setText(lineContent[0]);
minDataLabel.setText(lineContent[1]);
maxDataLabel.setText(lineContent[2]);
} catch (Exception e) {
e.printStackTrace();
}

最佳答案

Average Joe这里有两种加载dictionary.txt文件的方法
一个将数据放入 String[] 数组,另一个放入 ArrayList 字典
附注:缓冲读取器比扫描器方法快大约 6 到 9 倍

对于数组列表:

ArrayList<String> dictionary = new ArrayList<>();

private void onLoad() throws FileNotFoundException, IOException {
long start2 = System.nanoTime();

try (BufferedReader input = new BufferedReader(new FileReader("C:/A_WORDS/dictionary.txt"))) {
for (String line = input.readLine(); line != null; line = input.readLine())
dictionary.add(line);

input.close();
}

对于简单数组:

String[] simpleArray;

private void loadFile() throws FileNotFoundException, IOException {
File txt = new File("C:/A_WORDS/dictionary.txt");
try (Scanner scan = new Scanner(txt)) {
data = new ArrayList<>() ;
while (scan.hasNextLine())
data.add(scan.nextLine());

simpleArray = data.toArray(new String[]{});
int L = simpleArray.length;
System.out.println("@@@ L "+L);
}
}

关于java - 如何在 JavaFx 中将文本文件的行读入数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58916381/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com