java - 读取.txt信息并将其加载到数组中

标签 java file

所以,基本上,我将有一个名为“data.txt”的文件

此文件将包含:

Name;Age;State

示例:

Anne;19;S (Single/Married/etc)
Gustav;18;S
Dinisio;19;C

基本上,我想读取文件,将信息放入数组中,然后显示/列出它,例如:

Name: Anne
Age: 19
State: S

Name: Gustav
Age: 18
State: S

Name: Dinisio
Age: 19
State: C

为此,我创建了一个具有以下结构的类:

    class Person {
    String name;
    int age;
    char state;
    }

变量:

    int i, option;
    String s;
    File f = new File("C:\\Users\\Gustavo\\Desktop\\data.txt");

    Person arrayPerson[] = new Person[4]; // It has 4 persons only

我有以下菜单:

    System.out.print("Choose an option: ");
    System.out.println("\n1- Load");
    System.out.println("2- List");
    System.out.print("Option: ");
    option= ler.nextInt();
    System.out.println("");

    switch(option)
    {
        case 1:
        {
            Exercicio07Java.openRead(f);
            while((s = Exercicio07Java.readLine()) != null)
            {
                String[] str = s.split(";");
                arrayPerson[i] = new Person();
                arrayPerson[i].name = str[0];
                arrayPerson[i].age = Integer.valueOf(str[1]);
                arrayPerson[i].state = str[2].charAt(0);
                i++;
            }
            Exercicio07Java.closeRead();
            break;
        }

        case 2:
        {
            for(i = 0; i < 4; i++)
            {
                System.out.println(arrayPerson[i].nome);
                System.out.println(arrayPerson[i].idade);
                System.out.println(arrayPerson[i].estado);
            }
            break;
        }
    }

我或多或少知道如何读取信息,但我不知道如何将其传递到数组中,同时它由 ; 分隔p>

有什么想法吗?

最佳答案

使用 String.Split(String delimiter) 它返回一个 String[]。如果您将整行作为字符串读取并创建了一个新人。见下文。这可能是寻找您的好地方。

for(int i = 0; i < persons.size(); i++) {
     String [] info = /**Line From File Here As A String*/.split(";");
     persons[i].name = info[0];
     persons[i].age = info[1];
     persons[i].state = info[2];
}

关于java - 读取.txt信息并将其加载到数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28437574/

相关文章:

java - 计算文件中相同的行数,JAVA

linux - 如何在bash中输出目录的不可读内容

java - 如何使 java JPanel 和 graphics2d 透明?

java - 井号在使用 java.mail 包的邮件内容中不起作用?

java - 确定java中InputStream中下一个读取的类型

scala - 如何使用 Play 在 Scala 中读取文件! 2.0?

java - 这段代码如何以及为何起作用?找到将一个单词更改为另一个单词的最少步骤数

java - Android:SQLite 部分或完整单词搜索无法使用 SELECT 查询进行

java - 无法在 Eclipse 工作区中配置 Web 应用程序项目的运行路径

Python 截断方法大小参数行为