2016-05-19 7 views
0

Javaを使用してファイルから次の形式で読みたいファイルがあります。Javaでフォーマットされたファイルから値を読み取って識別する方法は?

ID,Name,Gender 
1,ABC,F 

ファイルから値を読み取ることができます。しかし、私は値 'F'を性別、または値 'ABC'が名前であることを確認する方法を知らない。

ユーザー提供の形式でこれらの値を区別するにはどうすればよいですか?

+0

これはCSVファイルのようです。あなたの身分証明書は価値の指標に基づいていますか?例えばインデックス1は名前、2は性別です。あなたが解析しているファイルのフォーマットは何ですか? – Sid

+0

文字列を "、"に分割し、配列の4番目または5番目の要素を取りますか? - https://docs.oracle.com/javase/7/docs/api/java/lang/String.html#split(java.lang.String) – AJPerez

+0

txtファイルまたはcsvファイル – goutthee

答えて

0

私はテーブルを使用すると動作します。

0

IはSuperCSVようなライブラリを使用することをお勧めします:
https://super-csv.github.io/super-csv/examples_reading.html

それはヘッダを抽出し、それらのヘッダ名と一致するフィールドを持つオブジェクトにデータ値を抽出することができます。

また、コンマを含む値も処理します。
名前フィールドの値が "John、Doe"の場合、値が ""で囲まれている限り、それは単一の値として扱われ、コンマに分割されません。

また、DoubleやDateなどの特定の列の値の書式を定義できるCellProcessorsもサポートしているため、型変換を手動で処理する必要はありません。

+0

@ tak3shi元のファイルはCSVですが、カンマ区切りの単純な構文解析では非常に残念です。 – hexafraction

0

ヘッダーとして最初の行を使用します。これは、csvを使用する場合に一般的ですが、csvにヘッダー行が含まれているかどうかを確認する一般的な方法はありません。

ID,Name,Gender 
1,ABC,F 
2,BCE,F 
関連する問題