Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.66/32: Рейтинг темы: голосов - 32, средняя оценка - 4.66
ShSergey

Как открыть файл, используя FileReader

21.08.2013, 17:53. Показов 6630. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Использую Intellij IDEA
В src создал файл Текст.txt
Как его открыть в FileReader ?
Код класса FileReaderDemo

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
import java.io.*;
 
class FileReaderDemo {
 
public static void main(String args[]) {
 
try {
    FileReader fr = new FileReader("Текст.txt") 
    int с ;    
    while((c = fr.read(J) != -1) System.out.print((char) c);
} catch(IOException e) {
    System.out.println("I/O Error: " + e)
}
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.08.2013, 17:53
Ответы с готовыми решениями:

Как из Access открыть файл, используя диалоговое окно "Открыть файл"?
Из базы данных в Access нужно открыть файл Exsel. причем пользователь должен выбрать его сам. то есть сделать открытие файла через...

Как используя combobox открыть файл?
Начал разбираться с comobox и возник вопрос:Как используя combobox открыть файл? В коллекциях два items if (combobox.SelectedItems==0)...

Как открыть файл, используя Python
Итак, я написал некоторую программу, которая создает некий файл и заполняет его определенными данными (не txt). Данные роли не играют. Мне...

9
ɐwʎ ɔ vǝmоɔ dиw ɐʚонɔ
 Аватар для tankomaz
443 / 442 / 100
Регистрация: 14.10.2012
Сообщений: 1,146
Записей в блоге: 9
21.08.2013, 18:47
Лучший ответ Сообщение было отмечено ildwine как решение

Решение

файл должен лежать на 1 уровень выше папки src. Не знаю как в идее, но в Эклипсе файл с относительным путем лежит рядом с bin и src.

В вашем коде много синтаксических ошибок, Идея разве вам не помогает?
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
import java.io.*;
 
class FileReaderDemo {
 
    public static void main(String args[]) {
        
        try {
            File file = new File("Text.txt");
            FileReader fr = new FileReader(file);
            BufferedReader br = new BufferedReader(fr);
 
            String str;
            while ((str = br.readLine()) != null) {
                System.out.println(str);
            }
        } catch (IOException e) {
            System.out.println("I/O Error: " + e);
        }
        
    }
}
написал раздельно "матрешку" File-FileReader-BufferedReader , про это много написано в книгах и сети
1
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,973
21.08.2013, 19:09
Лучший ответ Сообщение было отмечено ildwine как решение

Решение

Цитата Сообщение от tankomaz Посмотреть сообщение
написал раздельно "матрешку" File-FileReader-BufferedReader , про это много написано в книгах и сети
Как-то не попадалось, если можно, в двух словах - чем "матрёшки" так порочны? И кстати, а поток закрыть после чтения? Он, конечно, при выходе из программы и сам закроется, но не комильфо как-то. В этом плане try "с ресурсами" привлекательнее смотрится...
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
package easybudda.examples.filereaderexample;
 
import java.io.*;
 
public class FileReaderExample {
    static final String FILE_NAME = "file.txt";
    
    public static void main(String[] args) {
        String str;
        try ( BufferedReader br = new BufferedReader(new FileReader(FILE_NAME))) {
            while ( ( str = br.readLine() ) != null )
                System.out.println(str);
        }
        catch ( FileNotFoundException fnf ) {
            System.err.println("File " + FILE_NAME + " not found!");
        }
        catch ( IOException ioe ) {
            System.err.println("Error while reading " + FILE_NAME);
        }
    }
}
1
 Аватар для mutagen
2587 / 2260 / 257
Регистрация: 14.09.2011
Сообщений: 5,185
Записей в блоге: 18
21.08.2013, 19:20
Лучший ответ Сообщение было отмечено ildwine как решение

Решение

Цитата Сообщение от tankomaz Посмотреть сообщение
написал раздельно "матрешку" File-FileReader-BufferedReader , про это много написано в книгах и сети
Вобщем ситуация какраз наоборот, врапперы (матрёшки) созданы так что при закрытии верхнего, он после освобождения собственных ресурсов вызовет закрытие дочернего избавляя таким образом программиста от закрывания всего по очереди.
Поэтому создавать их раздельно имеет смысл только в том случае если оборачиваться они будут более чем одним враппером в разных вызовах.
3
 Аватар для Skipy
2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
22.08.2013, 09:14
Цитата Сообщение от easybudda Посмотреть сообщение
Как-то не попадалось, если можно, в двух словах - чем "матрёшки" так порочны?
Вообще-то ровно наоборот - матрешки представляют собой удачную реализацию шаблона Decorator.

Автор, в IDEA точка запуска приложения находится в директории проекта, т.е. там, где расположена папка src. Если файл в ней, то открывают его по адресу "./src/Текст.txt".

P.S. FileReader - это плохо. OutputStreamReader с указанием кодировки - хорошо.
0
ShSergey
22.08.2013, 09:53
Цитата Сообщение от tankomaz Посмотреть сообщение
В вашем коде много синтаксических ошибок, Идея разве вам не помогает?
Этот пример я скопировал из Шилда Java Полное руководство только немного отредактировал на сайте.

Файл переместил на 1 уровень выше папки src

Спасибо за ответы, но при запуске в Intellij IDEA все равно не находится файл.

Если вручную копирую файл в FileReaderDemo/out/production/FileReaderDemo и запускаю из командной строки java FileReaderDemo то файл находит и показывает его содержимое.

Но как сделать чтобы этот пример запускался в Intellij IDEA ?

Добавлено через 26 минут
tankomaz, Skipy,
Спасибо все заработало ! Удалил этот проект и создал новый проект.
Теперь открывается файл и из ./src/ и из ./
Но теперь возникла другая проблема открывается файл только с английскими буквами text.txt а Текст.txt уже на находит. Может быть это из операционки Mac OS 10.8.4 ?
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,973
22.08.2013, 11:17
Цитата Сообщение от Skipy Посмотреть сообщение
OutputStreamReader с указанием кодировки - хорошо.
InputStreamReader наверное?
0
 Аватар для Skipy
2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
22.08.2013, 11:19
Цитата Сообщение от ShSergey Посмотреть сообщение
Но теперь возникла другая проблема открывается файл только с английскими буквами text.txt а Текст.txt уже на находит. Может быть это из операционки Mac OS 10.8.4 ?
Может. Вообще есть хорошее правило - файлы и директории должны называться по-английски. Операционки (и не только их) все-таки пишутся там, где английский родной, и время от времени от этого бывают проблемы.
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,973
22.08.2013, 11:21
Цитата Сообщение от ShSergey Посмотреть сообщение
Может быть это из операционки Mac OS 10.8.4 ?
Под рукой нет, но что-то не припомню проблем в MacOS X с русскими именами файлов (разве-что в консоли без доп. настройки не наберёшь...)

Добавлено через 1 минуту
Цитата Сообщение от Skipy Посмотреть сообщение
файлы и директории должны называться по-английски
В идеале - да...
0
 Аватар для Skipy
2000 / 1427 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
22.08.2013, 11:29
Цитата Сообщение от easybudda Посмотреть сообщение
InputStreamReader наверное?
Да, конечно. В статье правильно указано.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.08.2013, 11:29
Помогаю со студенческими работами здесь

Не понимаю, как открыть файл используя fopen_s
Проблема конкретно в 22 строчке кода. как только её комменчу, ошибка пропадает. void show() { if ((file =...

QFile. Как открыть файл, не используя полный путь?
Нужно работать с файлом. Впринципе можна прописать полный путь, но это не подходит к моему заданию. Так файл открываеться QString str2; ...

Как открыть html файл используя класс Process?
как открыть html файл через браузер Internet Exlorer используя класс process???

Как создать или открыть файл, не используя классы
Как создать или открыть файл, не используя классы? Можно текстом, можно ссылочку где все подробно рассказывается. Спасибо большое

Filewriter, filereader. вывод рандомных чисел в файл, сортировка их в другой файл
Создать класс, который создает и заполняет файл случайными целыми числами, затем читает файл и выводит его содержимое в другой файл,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru