JAVA-如何将CSV特定列的内容添加到列表<;字符串>;?
这是我的CSV,第一行是标题,Akt(pan),Mc1-1等是内容。 我需要创建一个函数来提取SearchTerm列的内容并将其添加到JAVA-如何将CSV特定列的内容添加到列表<;字符串>;?,java,list,csv,parsing,arraylist,Java,List,Csv,Parsing,Arraylist,这是我的CSV,第一行是标题,Akt(pan),Mc1-1等是内容。 我需要创建一个函数来提取SearchTerm列的内容并将其添加到列表中 我用这段代码进行了尝试,但我的下一个处理需要有List,而不是List。有没有办法做到这一点,或者我有没有办法将解析后的List转换成只包含所有搜索词的List public List listAllSearchTerms()引发FileNotFoundException{ CsvParserSettings=新CsvParserSettings();
列表中
我用这段代码进行了尝试,但我的下一个处理需要有List
,而不是List
。有没有办法做到这一点,或者我有没有办法将解析后的List
转换成只包含所有搜索词的List
public List listAllSearchTerms()引发FileNotFoundException{
CsvParserSettings=新CsvParserSettings();
设置。选择索引(0);
CsvParser parser=新的CsvParser(设置);
List allRows=parser.parseAll(新文件读取器(“D:\\Projects\\cstocs test dev bitbucket\\cstocs test core\\src\\main\\resources\\data\\searchterm.csv”);
List returnList=new ArrayList();
所有行。删除(0);
for(字符串[]字符串:所有行){
addAll(Arrays.asList(strings));
}
退货清单;
}
如果您知道搜索词是哪列,可以使用替换for循环
for (String[] strings : allRows) {
returnList.add(strings[0]); //Assumes it's the first column
}
如果您知道SearchTerm是哪一列,那么可以将for循环替换为
for (String[] strings : allRows) {
returnList.add(strings[0]); //Assumes it's the first column
}
有没有什么方法可以把解析后的列表放到
是否仅包含所有搜索词的列表
有没有什么方法可以把解析后的列表放到
是否仅包含所有搜索词的列表
请写出所提到的代码示例有什么问题?这个示例似乎已经完成了您想要做的事情。可能为SearchTerms
创建一个bean类,然后按照这个问题进行操作,这样可以得到清晰的答案:请写下所提到的代码示例有什么问题?这个示例似乎已经完成了您想要做的事情。可能为SearchTerms
创建一个bean类,然后按照这个问题进行操作,就会得到清晰的答案:我认为第一列“SearchTerm”就是我们想要的。然后应该有.map(arr->arr[0])
而不是flatMap
。虽然流式解决方案是完美的,但我认为第一列“SearchTerm”是有意的。然后应该有.map(arr->arr[0])
而不是flatMap
。虽然流解决方案是完美的。
String[] strArr1 = {"a", "b", "c"};
String[] strArr2 = {"d", "e", "f"};
List<String[]> stringArrList = new ArrayList<>();
stringArrList.add(strArr1);
stringArrList.add(strArr2);
List<String> collect = stringArrList.stream()
.map(arr -> arr[0])
.collect(Collectors.toList());
System.out.println(collect);
[a, d]