- PR -

JAVAでCSVを読み取る方法

投稿者投稿内容
学生
会議室デビュー日: 2004/04/13
投稿数: 18
投稿日時: 2004-04-13 11:19
始めまして、JAVAでCSVを読み取ることが出来たのですが、指定した項目(例 名前,住所,電話番号としたら電話番号だけ表示したいのです。)だけ表示するにはどうしたらよいのか教えて戴けないでしょうか?
どらぴ
常連さん
会議室デビュー日: 2003/10/06
投稿数: 40
投稿日時: 2004-04-13 11:35
CSVファイルなのですからデータはカンマで区切られていて、改行があるはずですよね?
区切られているデータを配列に格納するのが簡単なやり方ではないでしょうか。
お勉強頑張ってください。
latte
常連さん
会議室デビュー日: 2002/11/07
投稿数: 38
投稿日時: 2004-04-13 12:25
実際に使ったことないですが、
[CsvJdbc - a JDBC driver for CSV files]
http://csvjdbc.sourceforge.net/
というのがあるみたいです。何か、いい感じでできないですかね?
せん
ぬし
会議室デビュー日: 2002/03/04
投稿数: 397
投稿日時: 2004-04-13 12:35
引用:

latteさんの書き込み (2004-04-13 12:25) より:
実際に使ったことないですが、
[CsvJdbc - a JDBC driver for CSV files]
http://csvjdbc.sourceforge.net/
というのがあるみたいです。何か、いい感じでできないですかね?



多分ですが、そゆレベルの話ではないと思われます ^^;


「読み取れた」とありますが、どのように読んだのかさっぱりわかりません。
自分は何をやったのか、何をやろうとして、何がわからないのか、
あなたの隣にいない人にも、わかるように説明してください。
びしばし
大ベテラン
会議室デビュー日: 2002/03/13
投稿数: 181
投稿日時: 2004-04-13 12:54
CsvJDBC イイですね。Windows では ODBC データソースとして CSV が使えますが登録が面倒ですし。

元の質問についてですが、CSV なんか使うから「何番目が電話番号か」とか意識しないといけないんです。DB で管理するとか XML で表現するとか仕様変更を検討したほうがよいでしょう。



たぶん、4月から始まったばかりの Java 講座で、ファイルの読み込みと配列/コレクションの使い方の話なんだろうとは想像がつきますが
学生
会議室デビュー日: 2004/04/13
投稿数: 18
投稿日時: 2004-04-13 13:08
皆様方お返事ありがとうございます。
私は未経験です。会社の研修でJAVAのみで住所録を作らないといけないのでDBが使えません。
import java.util.StringTokenizer;
import java.io.*;

public class jyusyo
{
public void search3()throws IOException
{
int no=0;
do
{
System.out.println("検索する名字を入力して下さい。");
System.out.println("");
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String kensakumoji = br.readLine();
System.out.println("検索文字列は:「" +kensakumoji+ "」です。");
BufferedReader ar = new BufferedReader(new FileReader("test1.csv"));
try
{
String line;
int linenum = 1;
while((line = ar.readLine()) != null)
{
StringTokenizer st = new StringTokenizer(line, ",");
String name = st.nextToken();
int n =name.indexOf(kensakumoji);
if ( n>= 0)
{
name = name.trim();
System.out.println("-----" + line);
}
}
}catch (IOException e)
{
System.out.println(e);
}
System.out.println("######さらに検索しますか?######");
System.out.println("###### 1:検索する 2:検索終了 ######");
BufferedReader cr =new BufferedReader(new InputStreamReader(System.in)); String str0 = cr.readLine();
no = Integer.parseInt(str0);
}while(no == 1);
System.out.println("######検索終了######");
}
}
現在、このようなソースを作成しています。
koe
大ベテラン
会議室デビュー日: 2003/07/13
投稿数: 198
投稿日時: 2004-04-13 13:33
以下、しょうもない突込みです。あしからず。
引用:

学生さんの書き込み (2004-04-13 13:08) より:
会社の研修でJAVAのみで住所録を作らないといけないのでDBが使えません。


HSQLDBを使った場合「Javaのみで開発」の条件を満たしたことになりますかね?
http://hsqldb.sourceforge.net/
たーぞう
ぬし
会議室デビュー日: 2003/08/08
投稿数: 317
お住まい・勤務地: お花畑
投稿日時: 2004-04-13 13:45
現在新人研修担当中のたーぞうです。

皆さんの会社では新人研修はどのようにやられているのですかね?
私の会社では、まずプログラムの作り方を理解させることを第1に考えているので、基本的に課題の仕様はこちらで決めるようにしていますが。

仕様の面でああしろこうしろというのはあまりいい回答ではないように思います。


>学生さん
このページはご存知ですか?
http://java.sun.com/j2se/1.4/ja/docs/ja/api/index.html
ここのどこかにヒントになることが書いてあります。

スキルアップ/キャリアアップ(JOB@IT)