Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Java > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 09.08.2018, 07:15   #1
Nastya2018
Форумчанин
 
Регистрация: 24.07.2018
Сообщений: 108
Репутация: -7
По умолчанию Почему выводит не правильно

Ребята я хочу чтобы мою матрицу вывело в текстовом файле, но почему то выводит
Код:

100
100
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Вот мой код
Код:

public static void writeMatrixToFile(Matrix m, String filename) {


        try(FileWriter writer = new FileWriter(filename, false)){
            String strForWrite = "";
            
            writer.write(String.valueOf(m.getRowCount()));
            writer.write("\n");
            writer.write(String.valueOf(m.getColCount()));
            writer.write("\n");

            for (int i = 1; i < m.getRowCount(); i++){
                for (int j = 1; j < m.getColCount(); j++){
                    strForWrite += m.get(i,j) + " ";
                }
                strForWrite += "\n";
            }

            writer.write(strForWrite);
            writer.flush();
        }catch (IOException e){
            e.printStackTrace();
        }catch(MatrixIndexException e){
             e.printStackTrace();
        }
    }

    public Matrix loadMatrixFromFile(String filename){
        try(FileReader reader = new FileReader(filename)){
            String strFromFile = "";

            while (reader.ready()){
                strFromFile += (char)reader.read();
            }

            String[] arr = strFromFile.split(" |\n");
            Matrix result = new Matrix(Integer.valueOf(arr[0]),Integer.valueOf(arr[1]));

            int row = 0;
            int col = 0;

            for (int i = 2; i < arr.length; i++){
                if (!arr[i].equals("")){
                    result.put(row, col) = Integer.valueOf(arr[i]);
                    col++;
                    if (col == result.getColCount()){
                        col = 0;
                        row++;
                    }
                }
            }

            return result;
        }catch (Exception e){
            e.printStackTrace();
        }
        return null;
    }
}

Nastya2018 вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
почему правильно не выводит отсортированный по росту массив Касік Visual C++ 1 26.03.2017 19:43
Код правильно написан? Не выводит на экран katerubak Помощь студентам 4 06.01.2017 21:39
IdHTTP не правильно выводит кириллицу Shouldercannon Общие вопросы Delphi 17 03.03.2015 09:03
cout не выводит правильно строку. FULEREN Общие вопросы C/C++ 2 10.02.2015 22:14
Почему выводит ноль? _Лето_ Общие вопросы C/C++ 4 14.11.2013 09:11


19:50.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru