0
以下は、.csvファイルを読み込んで出力するためのプログラムですが、私の入出力で述べたように以下の機能を実現することはできません。基本的に2つのグループに分かれていれば、別々のユーザーIDを表示したいと思っています。Java csvファイルを読み込み、繰り返し発生するものを個別に表示する
私の入力のようなものになるだろう:ABCは、2つの異なるグループに提供されていますので、私のように出力を必要とする
User ID Group
ABC Group1
DEF Group2
ABC Group3
GHI Group4
:
ABC Group1
ABC Group3
あなたは助けてくださいことはできますか?
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;
import java.util.StringTokenizer;
public class dumpRead {
public static void main(String[] args) {
try {
//csv file containing data
String strFile = "C:/Tracker/read/data.csv";
//create BufferedReader to read csv file
BufferedReader br = new BufferedReader(new FileReader(strFile));
String strLine = "";
StringTokenizer st = null;
int lineNumber = 0, tokenNumber = 0;
//read comma separated file line by line
while((strLine = br.readLine()) != null){
lineNumber++;
//break comma separated line using ","
st = new StringTokenizer(strLine, ",");
while(st.hasMoreTokens()){
//display csv values
tokenNumber++;
System.out.println("Token # " + tokenNumber
+ ", Token : "+ st.nextToken());
}
//reset token number
tokenNumber = 0;
}
}
catch(Exception e) {
System.out.println("Exception while reading csv file: " + e);
}
}
}
HashMap>は、各IDのグループを格納するのに便利です。単にIDをキーとして使用し、IDを解析するときに、追加されているかどうかを確認してください。そうであれば、arraylistをつかんでグループを追加してください。そうでない場合は、arraylistを作成し、グループを追加し、両方(idとarraylist)をハッシュマップに格納します。 –