.dataファイルからJavaへの読み取り-配列の配列に情報を格納するにはどうすればよいですか?

ノーブルサーファー

.dataファイルの読み取りに使用している次のJavaクラスがあります。

import java.io.*;
import java.util.Scanner;

public class ReadFile {
static File file;
String[] columns = new String[]{"personID", "lastName", "firstName", "street", "city"};
String[] data = new String[100];
String filename = "D:\\Users\\Elgan Frost\\Desktop\\careers\\Smart Stream Associate Software Engineer (Java) - Bristol\\assessment\\srcPerson.data";

public ReadFile(File f) throws FileNotFoundException {
    // TODO Auto-generated constructor stub
    try{
        //File = new File("D:\\Users\\Elgan Frost\\Desktop\\careers\\Smart Stream Associate Software Engineer (Java) - Bristol\\assessment\\srcPerson.data");
        f = new File("D:\\Users\\Elgan Frost\\Desktop\\careers\\Smart Stream Associate Software Engineer (Java) - Bristol\\assessment\\src\\Person.data");
        Scanner scanner = new Scanner(f);
        while(scanner.hasNextLine()){
            System.out.println(scanner.nextLine());
        }
    scanner.close();
    }
    finally{

    }
}

public void read(File file2) throws IOException{
    FileReader fr = new FileReader("D:\\Users\\Elgan Frost\\Desktop\\careers\\Smart Stream Associate Software Engineer (Java) - Bristol\\assessment\\src\\Person.data");
    BufferedReader br = new BufferedReader(fr);
    String line;

    int i = 0;
    while((line = br.readLine())!= null){
        data[i] = line;
        System.out.println(data[i]);
        i++;
    }
    br.close();

    String[] dataNew = new String[i];
    System.arraycopy(data, 0, dataNew, 0, i);
    data = dataNew;
    System.out.println("Data length: " + data.length);
}
}

私のコードをより完全に理解するために、次のJavaクラスもあります。これには私のメインメソッドが含まれています。

import java.io.*;

public class Person {

public static void main(String[] args) throws IOException {
    // TODO Auto-generated method stub
    ReadFile rf = new ReadFile(f);
    rf.read(ReadFile.file);

}
static File f;
public String id;
public String lastName;
public String firstName;
public String street;
public String city;

public void readPerson() throws FileNotFoundException{
    //File f = new File("Smart Stream Associate Software Engineer (Java) - Bristol/assessment/src/Person.java");
    //InputStream IS = new FileInputStream(f);
}

}

現在、プログラムを実行すると、コンソールに「Person.data ....」という2行が表示され、その行System.out.println(scanner.nextLine());System.out.println(data[i]);ReadFileにある読み取り中の.dataファイルのファイルパスが示されます。 .javaクラス、および「データ長:1」という行System.out.println("Data length: " + data.length);。これは、クラスの最後の行から取得されます。

これは、プログラムが.dataファイルの最初の2行を読み取ったが、最初の行のみを保存したことを意味すると思います。

私がしたいのは、最初の行を読み取り、それを文字列に格納してから、「スペース」が表示される場所で文字列を個別の文字列に分割し、それらの各文字列を文字列の配列の要素に格納することです。クラスの開始時に次の行を使用して作成しました。

String[] columns = new String[]{"personID", "lastName", "firstName", "street", "city"};

個別の文字列は、この順序でそれぞれに格納する必要があります。最初の文字列(元の文字列の最初のスペースの前)は「personID」に格納され、2番目の文字列(最初のスペースの後、2番目のスペースの前)は格納されます。 「lastName」などで

次に、ファイル内の次の各行を順番に読み取り、各行の要素を「列」の次の「行」に格納します。文字列配列(基本的に、配列を使用してデータのテーブルを作成します)各配列の最初の要素は「personID」、2番目の要素は「lastName」などです。

ファイルの最後に到達するまでこれを実行してから、「columns」配列のいくつかの要素の内容を出力して、機能したことを示します。

私はこれについてどうやって行くのかわかりません、そして誰かが私を正しい方向に向けることができるかどうか疑問に思っていましたか?

プラティックシェラー
final Scanner in = new Scanner(new FileReader("filename.txt"));
    final List<Person> persons= new ArrayList<Person>();
    while (in.hasNext()) {
        final String[] columns = in.next().split(" ");
                    final Person person = new Person();
                    Person.setId(column[0]);
                    Person.setName(column[1]);
                    // like this you can set all the fields     
        persons.add(person);
    }

次に、列リストからいくつかのレコードをループして、同じものを表示できます。

OOPSによるコメントで示唆されているように、最良の設計は、人物オブジェクトを持ち、ファイルからのデータを人物オブジェクトのリストとして保存することです。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

このテキストファイルの情報を読み取って配列に分割するにはどうすればよいですか?

分類Dev

ファイルから文字列の配列を読み取るにはどうすればよいですか?

分類Dev

文字列の配列をdefn内に格納するにはどうすればよいですか?

分類Dev

配列からの製品情報をreactで表示するにはどうすればよいですか?

分類Dev

セルの範囲を配列に格納するにはどうすればよいですか?

分類Dev

空白のある要素を配列に格納するにはどうすればよいですか?

分類Dev

メソッドの値を配列に格納するにはどうすればよいですか?

分類Dev

Cの配列に行列を格納するにはどうすればよいですか?

分類Dev

「\ 0」をC ++のchar配列に格納するにはどうすればよいですか?

分類Dev

関数の出力を配列に格納するにはどうすればよいですか

分類Dev

カレンダー型の年を配列に格納するにはどうすればよいですか?

分類Dev

JavaScriptの配列に値を格納するにはどうすればよいですか?

分類Dev

配列(JavaScript)のpromise内にデータを格納するにはどうすればよいですか?

分類Dev

メモリに格納されている実行可能ファイルのFileVersion情報をバイトの配列として取得するにはどうすればよいですか?

分類Dev

ファイルからすべての文字を読み取り、\ nなしで2D配列に格納するにはどうすればよいですか?

分類Dev

混合型のファイルから配列に整数を格納するにはどうすればよいですか?Java

分類Dev

2つの文字列配列を比較し、一致する値を別の文字列配列に格納するにはどうすればよいですか?

分類Dev

テキストファイルから単語を読み取り、文字列の配列に追加するにはどうすればよいですか?

分類Dev

カンマ区切りファイルのn番目の列を配列に格納するにはどうすればよいですか?

分類Dev

文字列の配列を別の文字列の配列に格納するにはどうすればよいですか?

分類Dev

Rの別の配列からの情報に基づいて配列内に要素を追加するにはどうすればよいですか?

分類Dev

特定の配列から奇数と偶数を選び出し、それらを別の配列に格納するにはどうすればよいですか?

分類Dev

VBAで、Excelテーブル全体を、関連するすべての子情報を含む簡単にアクセスできる配列に格納するにはどうすればよいですか?

分類Dev

配列から文字を取得して変数に格納するにはどうすればよいですか?

分類Dev

Javaで、配列に大きな数値を格納するにはどうすればよいですか?

分類Dev

配列からメッセージに情報を取得するにはどうすればよいですか?

分類Dev

xlsxファイルから読み取り、特定の列値をPythonの配列に格納する方法は?

分類Dev

テキストファイルの値をJavaの配列に格納するにはどうすればよいですか?

分類Dev

配列の各要素を相互に乗算し、各製品の値をc ++の配列に格納するにはどうすればよいですか?

Related 関連記事

  1. 1

    このテキストファイルの情報を読み取って配列に分割するにはどうすればよいですか?

  2. 2

    ファイルから文字列の配列を読み取るにはどうすればよいですか?

  3. 3

    文字列の配列をdefn内に格納するにはどうすればよいですか?

  4. 4

    配列からの製品情報をreactで表示するにはどうすればよいですか?

  5. 5

    セルの範囲を配列に格納するにはどうすればよいですか?

  6. 6

    空白のある要素を配列に格納するにはどうすればよいですか?

  7. 7

    メソッドの値を配列に格納するにはどうすればよいですか?

  8. 8

    Cの配列に行列を格納するにはどうすればよいですか?

  9. 9

    「\ 0」をC ++のchar配列に格納するにはどうすればよいですか?

  10. 10

    関数の出力を配列に格納するにはどうすればよいですか

  11. 11

    カレンダー型の年を配列に格納するにはどうすればよいですか?

  12. 12

    JavaScriptの配列に値を格納するにはどうすればよいですか?

  13. 13

    配列(JavaScript)のpromise内にデータを格納するにはどうすればよいですか?

  14. 14

    メモリに格納されている実行可能ファイルのFileVersion情報をバイトの配列として取得するにはどうすればよいですか?

  15. 15

    ファイルからすべての文字を読み取り、\ nなしで2D配列に格納するにはどうすればよいですか?

  16. 16

    混合型のファイルから配列に整数を格納するにはどうすればよいですか?Java

  17. 17

    2つの文字列配列を比較し、一致する値を別の文字列配列に格納するにはどうすればよいですか?

  18. 18

    テキストファイルから単語を読み取り、文字列の配列に追加するにはどうすればよいですか?

  19. 19

    カンマ区切りファイルのn番目の列を配列に格納するにはどうすればよいですか?

  20. 20

    文字列の配列を別の文字列の配列に格納するにはどうすればよいですか?

  21. 21

    Rの別の配列からの情報に基づいて配列内に要素を追加するにはどうすればよいですか?

  22. 22

    特定の配列から奇数と偶数を選び出し、それらを別の配列に格納するにはどうすればよいですか?

  23. 23

    VBAで、Excelテーブル全体を、関連するすべての子情報を含む簡単にアクセスできる配列に格納するにはどうすればよいですか?

  24. 24

    配列から文字を取得して変数に格納するにはどうすればよいですか?

  25. 25

    Javaで、配列に大きな数値を格納するにはどうすればよいですか?

  26. 26

    配列からメッセージに情報を取得するにはどうすればよいですか?

  27. 27

    xlsxファイルから読み取り、特定の列値をPythonの配列に格納する方法は?

  28. 28

    テキストファイルの値をJavaの配列に格納するにはどうすればよいですか?

  29. 29

    配列の各要素を相互に乗算し、各製品の値をc ++の配列に格納するにはどうすればよいですか?

ホットタグ

アーカイブ