| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Общие вопросы > Проблема с записью в файл |
| Автор: xreal 15.8.2010, 19:00 | ||
Построчно записываю массив в файл, всё бы хорошо, только в конце файла появляются null, которые позже мешают корректному выполнению программы. Подскажите, как быть.
|
| Автор: jk1 15.8.2010, 19:43 | ||
Общая рекомендация: раз поток вывода буферизованный, то стоит принудительно опустошать неполный буфер перед закрытием:
А в данном конкретном случае скорее всего дело в массиве: в его последних элементах лежат null, вот они и записывается в файл. |
| Автор: xreal 15.8.2010, 19:50 | ||
Спасибо. А что касается массива, то он берётся из файла. Размер определяю так:
А flush не помог. Так что рад буду ещё варианты послушать. |
| Автор: jk1 15.8.2010, 20:31 | ||
| flush() и не мог быть причиной вашей проблемы, не зря же я его общей рекомендацией назвал. Есть подозрение, что неправильно читается входной файл. Зачем вам определять размер файла? может быть стоит просто читать его так:
|
| Автор: xreal 15.8.2010, 21:23 | ||
Я наверное что-то не до конца правильно понял... Мы прочитали файл в связный список, а потом связный список преобразовали в массив...
сделал так, но теперь мне одни null выдаёт без текста. |
| Автор: jk1 15.8.2010, 21:51 | ||||||||
Давайте разбирать. Первый кусок читает файл построчно, строки кладет в связный список
Затем список преобразуется в массив
Казалось бы у нас есть искомое, но далее Вы (почему-то) продолжаете читать файл, хотя он кончился
вполне понятно, что возвращается null. Этими null'ами Вы затираете весь считанный до этого массив. Зачем? |
| Автор: xreal 15.8.2010, 21:55 |
| Уууу это я уже совсем видимо)) Пересидел за компом и внимание на нуле и голова работает с перебоями)) У меня же там метка была и возвращение на неё до начала чтения, а теперь то не надо) а я и забыл что в цикле снова читаю...)) Спасибо)) |
| Автор: jk1 15.8.2010, 22:02 |
| Незачто. Если вопрос решился, пометьте тему как решенную. |