我不太明白,例如在opencsv网站上如何在这里使用集合List,例如:
CSVReader reader = new CSVReader(new FileReader("yourfile.csv"));**
List myEntries = reader.readAll();**
我尝试访问列表的成员,例如System.out.println(myEntries.get(2))
,但它给了我类似d1e604
的内容,当我测试元素是否存在时
boolean b = myEntries.contains("the element");** and it returns false.
访问标记化字符串需要做什么?
通过使用readNext(),元素由“\ n”分隔,我想以连续的no分配元素。数组。
while((tokened = reader.readNext()) != null){
int numOfArray = tokened.length;
System.out.println("number of items:"+ numOfArray) ;
for (int i = 0;i < numOfArray;i++) {
System.out.println(" tokenNo[" + i + "]: " + tokened[i]);
}
}
答案 0 :(得分:1)
我想你错过了一个关于CSV的事实。 CSV是关于行和列的。 readNext()
返回表示一行的字符串数组。所以我猜,readAll()返回一个string []列表。
答案 1 :(得分:1)
List myEntries的每个元素都是String []。 即,这是一个String数组。 这意味着你需要演员。
String[] entry = (String[]) myEntries.get(2);
另外 -
System.out.println(myEntries.get(2)) but it gives me something like d1e604.
那是因为没有正确覆盖toString方法。这是在Object类中实现的toString方法的默认行为。