当前位置: 首页 > 面试题库 >

如何在Java中以CSV格式编写ArrayLists列表

蒲昊苍
2023-03-14
问题内容

我有以下格式的数据:

   List<ArrayList<String>>

我想将其写入CSV。下面是我的代码:

private static void writeToCSV(List<ArrayList<String>> csvInput) throws IOException{

String csv = "C:\\output.csv";
CSVWriter writer = null;

try {
    writer = new CSVWriter(new FileWriter(csv));
    } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }

for(ArrayList<String> each: csvInput){
    writer.writeNext(each);
}


writer.close();
}//end of writeTOCSV

方法“ writeNext”仅允许使用String []作为参数。当我尝试使用Object []将’ArrayList each’强制转换为String
[]时,如下所示,我遇到了运行时类型强制转换错误:

   Object[] eachTemp = each.toArray();
   writer.writeNext((String[]) eachTemp);

谁能告诉我我要去哪里错了?


问题答案:

你不能投Object[]String[],因为Object[]可以包含狗,猫,整型等。

您应该使用重载的List#toArray(T
[])
方法。

List<String> list = new ArrayList<String>();
String[] array = list.toArray(new String[] {});


 类似资料:
  • 问题内容: 我有一个列表列表,我想将其写入csv文件中。示例列表: data [0]应该是列名,其他都是行数据 请给我建议一种方法。 问题答案: 这与模块无关紧要: 您已经具有标题作为第一行;您可以使用该方法一次性写入所有行。真的,这就是全部。

  • 我想打印一个散列的散列(具有不可定义的深度)作为CSV。 假设我有一个由foo、bar、cars等组成的结构,其中最深散列的键指向一个数字标量。 我想把这个结构打印成这样: 有没有人知道如何做到这一点,当你不知道哈希结构的深度(也可能有额外的火星和战争等)? 到目前为止我试过什么? 这是我的大致想法,但是哈希的键在第一个之后不会重复。 提前感谢!!! 编辑< br >我已经在使用perl 5.14

  • 我是python新手。我在使用csv文件时遇到问题。这是一个有12行标题的文件,在开始数据之后。我必须从列中读取一些数据(这是可以的),在详细说明之后,我必须向同一文件中添加一列,每行中都有一个值,但第一列中没有任何id,该列必须从第13行开始,而不是从第一行开始。 我试过用熊猫图书馆但不管用 其中,package是列的名称(但我也知道索引),package是字符串数组(我必须编写的元素)。这段代

  • 我需要以.csv格式输出我的hadoop结果。我要怎么做?我的代码:https://github.com/studhadoop/xml/blob/master/xmlparser11.java 我是否应该简单地在代码中包含csvoutputFormat。我正在使用mapreduce API MyJob.sh 解决方案

  • 我正在尝试将XML文件转换为CSV。解析XML并进行转换。在写入CSV文件时,我遇到了问题。如果数据具有“新行”(即,\n或\r),则它将作为新数据出现在下一个记录中。因此,我无法使用OpenCSV CSVWriter生成正确的文档。我需要包装单元格,以便它可以访问/写入该单元格中的数据。 在CSVWriter之上,我创建并写入如下数据: 输入XML文件: 预期输出: 如果能得到帮助,我们将不胜感

  • 问题内容: 我需要以.csv格式输出hadoop结果。我该怎么做?我的代码:https : //github.com/studhadoop/xml/blob/master/XmlParser11.java 我应该在我的代码中简单地包含csvoutputFormat吗?我正在使用mapreduce API myjob.sh 解 是的,我不见了>在猫里 问题答案: 您可以使用TextOutputFor