Java BufferedWriter写sumbols而不是数字有什么原因吗?

Java BufferedWriter写sumbols而不是数字有什么原因吗?,java,bufferedwriter,Java,Bufferedwriter,我试图从数字中写入一个二维数组,但它只为1写入SOH,为5写入ENO,为0NUL写入一个空格。 我从记事本上收到了那些信++ int[][] array= new int[][] { { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }, { 1, 0, 0, 0, 0, 0, 0, 0, 0, 1 }, { 1, 0, 0, 0, 5, 0, 0, 0, 0, 1 }, { 1, 0,

我试图从数字中写入一个二维数组,但它只为1写入SOH,为5写入ENO,为0NUL写入一个空格。 我从记事本上收到了那些信++

    int[][] array= new int[][]
    {
          { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 },
          { 1, 0, 0, 0, 0, 0, 0, 0, 0, 1 },
          { 1, 0, 0, 0, 5, 0, 0, 0, 0, 1 },
          { 1, 0, 0, 0, 0, 0, 0, 0, 0, 1 },
          { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }
    };
     String level = "Level.txt";
     try (BufferedWriter writer = Files.newBufferedWriter(Paths.get(level))) {
         for(int i=0;i<masiv1.length;i++)
         {
             for(int j=0;j<array[i].length;j++)
             {
                 writer.write(array[i][j]);
             }
             writer.write("\n");
         }
     }
如果可能的话,我想将数字写入文件。

您正在呼叫的是一个将单个字符写入写入器的程序

如果需要数字的字符串表示形式,则需要确保先转换为字符串,然后调用Writer.writeString。最简单的方法是调用String.valueOf来执行转换:

writer.write(String.valueOf(array[i][j]));
您正在呼叫一个将单个字符写入作者的用户

如果需要数字的字符串表示形式,则需要确保先转换为字符串,然后调用Writer.writeString。最简单的方法是调用String.valueOf来执行转换:

writer.write(String.valueOf(array[i][j]));

非常感谢。它解决了我的问题!非常感谢你!非常感谢。它解决了我的问题!非常感谢你!一些建议:阅读您调用的方法的文档;知道他们在做什么。如果将鼠标悬停在方法上,IDE应该显示它;知道他们在做什么。如果将鼠标悬停在该方法上,IDE将显示该方法。