将矩阵保存到csv文件的问题

时间:2011-06-07 21:20:29

标签: java eclipse csv

我正在尝试将整数矩阵保存到csv文件中。我的代码如下所示。

try
    {
      FileWriter writer = new FileWriter("test.csv");          
         for(int i = 0; i < row; i++)
         {
            for (int j=0; j<(column-1); j++)
             {
                 writer.append(Matrix[i][j]);
                 writer.append(',');
             }
               writer.append(Matrix[i][j]);
               writer.append('\n');
               writer.flush();
         }
         writer.close();
      }        
    catch(Exception e)
    {
      e.printStackTrace();
    }

但是,Eclipse提供了以下错误消息:

  

类型Writer中的方法append(CharSequence)不是    适用于参数(int)

如何解决这个问题?感谢。

3 个答案:

答案 0 :(得分:6)

将您的来电更改为append(Matrix[i][j])append(String.valueOf(Matrix[i][j])append("" + Matrix[i][j])。问题(正如错误消息所指出的)是你试图附加一个整数,但append方法只接受CharSequence(即一个字符串)。我提出的两个解决方案都将整数/数字类型强制转换为String。

答案 1 :(得分:1)

正如@ I82所提到的,另一种方法是使用write(对于,,以避免创建字符串)。此外,您在for循环外使用j,因此您还需要在外部声明它:

int j;
for (j=0; j<(column-1); j++)
{
    writer.append(Matrix[i][j]);
    writer.append(',');
}
writer.append(Matrix[i][j]);

答案 2 :(得分:0)

其他答案都很好,另一种方法是使用

writer.append(Integer.toString(Matrix[i][j]));

同样正如@MByD所说,如果你在循环之外使用它,你必须在循环之外声明j