java - 如何用Java读取文本文件中一行的特定部分?

标签 java arrays filereader

我有一个文本文件,其中逐行写入了一些信息,如下所示:

姓名|号码|金额|PIN

如何以(例如)我能够在方法中仅使用“名称”部分的方式读回数据? 示例代码如下图所示。

pic 1

pic 2

最佳答案

首先声明一个列表来收集帐户:

import java.util.ArrayList;
...

public Account[] inReader() { //BTW: why do you pass an Account[] here? 
ArrayList accountList = new ArrayList();
    ...
}

for(Stringrecords : dataRecords) {...} 替换为

String name = dataRecords[0];
String cardNumber = dataRecords[1];
int pin = Integer.parseInt(dataRecords[2]); //to convert the String back to int
double balance = Double.parseDouble(dataRecords[3]);

Account account = new Account(name, cardNumber, pin, balance);
accountList.add(account);

因为您已经逐条记录进行操作 (while ((line = br.readLine())!=null) {...})

最后返回 accountList.toArray(new Account[0]);

关于java - 如何用Java读取文本文件中一行的特定部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55450672/

相关文章:

java - 收到此错误没有找到类 org.json.JSONObject 的序列化器,也没有发现创建 BeanSerializer 的属性

javascript FileReader 多个不工作

javascript - 文件阅读器告诉我参数 1 不是 blob?

java - 从字符串中提取 double 值获取 java.util.NoSuchElementException

java - KeyHandler 不响应按键事件

java - 如果字符串数组本身是 ArrayList 的元素,如何从字符串数组中获取元素?

php - 在 PHP 中将数组元素移动到顶部

javascript - 在客户端用 JavaScript 逐行读取文件

java - Kotlin硬编码字符串

java - 如何获得快速排序的分区以产生正确和预期的输出?