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

我正在尝试将一个二维数组从数字写入文件,但它只写入 1 的 (SOH)、5 的 (ENO) 和 0(NUL) 的空格。我从 NotePad++ 收到了那些信


    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");

         }

     }

如果可能,我想将数字写入文件。


繁花不似锦
浏览 147回答 1
1回答

千巷猫影

你打电话给Writer.write(int)作者写一个字符。如果您想要数字的字符串表示,您需要确保先转换为字符串并调用Writer.write(String).&nbsp;最简单的方法是调用String.valueOf执行转换:writer.write(String.valueOf(array[i][j]));
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java