为了账号安全,请及时绑定邮箱和手机立即绑定

如何在文本文件中保存矩阵

如何在文本文件中保存矩阵

拉风的咖菲猫 2019-04-19 18:15:47
我只想在文本文件中输入矩阵,但结果明显不同。我没有任何想法。public void saveToTextFile() {    try {        BufferedWriter writer = new BufferedWriter(new FileWriter(new File("matrix.txt")));        for (int i = 0; i < matrix.length; i++) {            for (int j = 0; j < matrix[i].length; j++) {                writer.write(matrix[i][j] + " ");            }            writer.newLine();        }        writer.flush();        writer.close();    } catch (IOException e) {        System.out.println("Error");    }}我预计1 2 34 5 67 8 9但在文件中1 1 15 5 59 9 9
查看完整描述

2 回答

?
慕容3067478

TA贡献1773条经验 获得超3个赞

你可以试试这个:

int[][] ints = new int[4][4]; // Let's say you have a 4 * 4 ints array filled like this

        ints[0][0] = 1;
        ints[0][1] = 2;
        ints[0][2] = 3;
        ints[0][3] = 4;

        ints[1][0] = 5;
        ints[1][1] = 6;
        ints[1][2] = 7;
        ints[1][3] = 8;

        ints[2][0] = 9;
        ints[2][1] = 10;
        ints[2][2] = 11;
        ints[2][3] = 12;

        ints[3][0] = 13;
        ints[3][1] = 14;
        ints[3][2] = 15;
        ints[3][3] = 16;

        StringBuilder sb = new StringBuilder(); // String Builder to create the table structure before writing it to the file.

        for (int[] int1 : ints) {
            for (int j = 0; j < int1.length; j++) {
                sb.append(int1[j]).append("\t"); // Add tab to delimite the elements
            }
            sb.append("\r\n"); // Add new line character
        }

        System.out.println(sb);

        Path path = Paths.get("C:\\Users\\youruser\\Documents\\test.txt"); // The path to your file

        Files.write(path, sb.toString().getBytes()); // Writes to that path the bytes in the string from the stringBuilder object.

这将打印像表格的值:

https://img1.sycdn.imooc.com//5cdba03f00012fdd01980063.jpg

查看完整回答
反对 回复 2019-05-15
?
繁星淼淼

TA贡献1775条经验 获得超11个赞

对您的方法进行轻微修改:


try {

            int[][] matrix = new int[3][3];

            BufferedWriter writer = new BufferedWriter(new FileWriter(new File("matrix.txt")));


            int num = 1;


            for (int i = 0; i < matrix.length; i++) {

                for (int j = 0; j < matrix[i].length; j++) {

                    writer.write(num + " ");

                    num++;

                }


                writer.newLine();

            }

            writer.flush();

            writer.close();


        } catch (Exception e) {

            System.out.println("Error");

        }


查看完整回答
反对 回复 2019-05-15
  • 2 回答
  • 0 关注
  • 708 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信