| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java: Общие вопросы > PrintWriter не может найти файл |
| Автор: Serkys 29.5.2009, 12:08 | ||||||
| Всем привет. В Java я новичок, прошу помощи опытных программистов. Пытаюсь создать файл и записать в него что-либо, но получаю исключение FileNotFoundException. Код следующий:
Результат:
Windows XP. Файл с таким именем не существует. Прописывание абсолютного пути ("c:\\myfile.txt") не помогает. Если модифицировать код таким образом:
Файл создаётся, но пустой. Да и не нравится мне эта заглушка на исключение. |
| Автор: jcyber 29.5.2009, 12:21 | ||
попытайтесь сл. образом:
|
| Автор: LSD 29.5.2009, 12:27 | ||
Потоки обязательно надо закрывать.
Если в середине работы надо удостовериться что данные записались на диск можно вызывать flush(). Перед close() это делать не обязательно, это будет сделано автоматически. |
| Автор: LSD 29.5.2009, 12:40 | ||
Оно не выбрасывается, оно может быть выброшено. И конструкция:
предупреждает программиста об этом. Дальше ты должен решить или обработать его (использую try/catch) или предупредить того кто будет вызывать твоей метод, что он выбрасывает исключение. |
| Автор: Serkys 29.5.2009, 13:10 |
| Получается, компилятор ругается не на то, что выброшено неотловленное исключение, а на то, что я не указал исключение в список потенциально выбрасываемых? Исключения выбрасываются, если не ошибаюсь, на этапе выполнения, а не компиляции. Не ошибаюсь? |
| Автор: LSD 29.5.2009, 14:03 | ||||||
По моему сообщение об ошибке:
достаточно ясно об этом говорит.
Да, на этапе выполнения. Я думаю тебе стоит почитать какую нибудь литературу про обработку исключений в Java. |
| Автор: Serkys 29.5.2009, 14:09 | ||
Обязательно почитаю, и не только это. Столько нового и интересного в этом языке LSD, спасибо тебе большое за помощь. |