【发布时间】:2017-05-09 17:57:49
【问题描述】:
我有一个这种格式的 CSV:
“帐户名称”、“全名”、“客户系统名称”、“销售代表”
"0x7a69","Mike Smith","0x7a69","Tim Greaves"
"0x7a69","约翰·泰勒","0x7a69","布莱恩·安东尼"
“苹果”、“史蒂夫·乔布斯”、“苹果”、“安东尼·迈克尔”
“苹果”、“史蒂夫·乔布斯”、“苹果”、“布莱恩·安东尼”
“苹果”、“蒂姆·库克”、“苹果”、“蒂姆·格里夫斯”
...
我想解析这个 CSV(使用 Java),使它变成:
“帐户名称”、“全名”、“客户系统名称”、“销售代表”
"0x7a69","Mike Smith, John Taylor","0x7a69","Tim Greaves, Brian Anthony"
“苹果”、“史蒂夫·乔布斯、蒂姆·库克”、“苹果”、“安东尼·迈克尔、布莱恩·安东尼、蒂姆·格里夫斯”
基本上我只是想压缩 CSV,以便每个帐户/公司名称有一个条目。
这是我目前所拥有的:
String csvFile = "something.csv";
String line = "";
String cvsSplitBy = ",";
List<String> accountList = new ArrayList<String>();
List<String> nameList = new ArrayList<String>();
List<String> systemNameList = new ArrayList<String>();
List<String> salesList = new ArrayList<String>();
try (BufferedReader br = new BufferedReader(new FileReader(csvFile)))
{
while ((line = br.readLine()) != null) {
// use comma as separator
String[] csv = line.split(cvsSplitBy);
accountList.add(csv[0]);
nameList.add(csv[1]);
systemNameList.add(csv[2]);
salesList.add(csv[3]);
}
所以我正在考虑将它们全部添加到自己的列表中,然后遍历所有列表并比较值,但我无法理解它是如何工作的。非常感谢任何提示或建议。谢谢!
【问题讨论】: