Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/55: Рейтинг темы: голосов - 55, средняя оценка - 4.80
0 / 0 / 2
Регистрация: 19.11.2017
Сообщений: 28
1

Запись в файл с кодировкой

19.11.2017, 22:23. Показов 10968. Ответов 8

Author24 — интернет-сервис помощи студентам
Добрый вечер всем
У меня возникла вот такая загвоздка:
PrintWriter print = new PrintWriter(new BufferedWriter(new FileWriter(File,true)),"ansi-1251")
Хотел записывать в файл через PrintWriter(удобство) текст c кодировкой,предварительно буферизовав текст
Почему конструктор PrintWriter ругается?
Предложите возможные решения моей задачи,пожалуйста
В дальнейшем приложение буду делать и на iOS и на Linux,выгодно ли оставлять эту кодировку?либо же лучше использовать UTF?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.11.2017, 22:23
Ответы с готовыми решениями:

Запись в файл с кодировкой cp1251
Задача Создать csv файл для дальнейшего импорта в БД Проблема Русские символы в файле...

Запись результата в текстовый файл с кодировкой UTF-8
Всем доброго времени суток, Есть программа-тест, которая написана на Пайтоне. Человек отвечает...

Запись текста в html-файл с кодировкой UTF-8
Хочу записать текст в html-страницу, в которой кодировка utf-8. AnsiString s1="Таблица"; wchar_t...

С кодировкой базы данных и кодировкой сайтом и кодировкой файла разобраться не могу
С кодировкой базы данных и сайтом файлом разобраться не могу. Я на своем сайте вывожу данные из...

8
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
19.11.2017, 22:35 2
очевидно, потому что нет конструктора с таким набором параметров. Открой документацию и выбери подходящий.
0
0 / 0 / 2
Регистрация: 19.11.2017
Сообщений: 28
19.11.2017, 22:50  [ТС] 3
Цитата Сообщение от xoraxax Посмотреть сообщение
очевидно, потому что нет конструктора с таким набором параметров. Открой документацию и выбери подходящий.
Java
1
2
3
4
5
public PrintWriter(File file, String csn)
        throws FileNotFoundException, UnsupportedEncodingException
    {
        this(toCharset(csn), file);
    }
Чем не подходит?
Но даже если убрать всё и оставить
PrintWriter print = new PrintWriter(File,"ansi-1251");
Русские символы всё так же нормально не вводятся.
0
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
19.11.2017, 23:05 4
Path path = Paths.get("D:/test.txt");
Files.write(path, singletonList("Првиет, мир"));
на, не мучайся.
0
0 / 0 / 2
Регистрация: 19.11.2017
Сообщений: 28
19.11.2017, 23:16  [ТС] 5
Цитата Сообщение от xoraxax Посмотреть сообщение
Path path = Paths.get("D:/test.txt");
Files.write(path, singletonList("Првиет, мир"));
на, не мучайся.
так пропадает весь смысл..
мне необходима буферизация и кодировка,это как минимум.
можно воспользоваться этим
BufferedWriter print = new BufferedWriter(new OutputStreamWriter(newFileOutputStream(Путь к файлу),"кодировка"));
Но если есть возможность использовать PrintWriter-я хочу её использовать,т.к. на моё мнение нет ничего удобнее.
Но всё ещё не могу понять прикола конструктора....
К тому же мой вопрос про метод кодирования остаётся открытым.
0
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
19.11.2017, 23:24 6
Цитата Сообщение от -TiP Посмотреть сообщение
мне необходима буферизация и кодировка
вот эта мысль видится очень сомнительной при том, что есть вот эта:
Цитата Сообщение от -TiP Посмотреть сообщение
Но всё ещё не могу понять прикола конструктора....
Добавлено через 2 минуты
кроме того, если потрудишься заглянуть внутрь метода Files.write, вероятно, твои вопросы сами отпадут
0
0 / 0 / 2
Регистрация: 19.11.2017
Сообщений: 28
19.11.2017, 23:50  [ТС] 7
Цитата Сообщение от xoraxax Посмотреть сообщение
вот эта мысль видится очень сомнительной при том, что есть вот эта:


Добавлено через 2 минуты
кроме того, если потрудишься заглянуть внутрь метода Files.write, вероятно, твои вопросы сами отпадут
Ладно,допустим либо PrintWriter,либо буферизация отпадает
тогда пара вопросов всё ещё открыта:
В дальнейшем приложение буду делать и на iOS и на Linux,выгодно ли оставлять эту кодировку?либо же лучше использовать UTF?
PrintWriter print = new PrintWriter(File,"ansi-1251");
BufferedWriter print = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(Путь к файлу),"cp1251"));
Русские символы всё так же нормально не вводятся.(Если использовать UTF-8 - всё нормально)Как тогда правильно использовать windows1251?
0
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
19.11.2017, 23:52 8
используй utf >_<
0
Эксперт функциональных языков программированияЭксперт Java
4486 / 2721 / 485
Регистрация: 28.04.2012
Сообщений: 8,590
20.11.2017, 09:11 9
Цитата Сообщение от -TiP Посмотреть сообщение
Как тогда правильно использовать windows1251?
Правильно использовать windows1251 — это не использовать windows1251.
0
20.11.2017, 09:11
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
20.11.2017, 09:11
Помогаю со студенческими работами здесь

Запись в dbf с кодировкой 1251
Добрый день. Для добавления файлов я копирую базу и в неё дописываю то, что мне нужно, но есть 1...

Запись файла с кодировкой UTF-8
Нужно из Edit1 считать некое число и сохранить его в файле с кодировкой UTF-8. В интернете нашел...

Запись данных в MySQL с русской кодировкой.
Что надо настроить или указать в коде, чтобы символы русской кодировки сохранялись корректно в...

Как создать файл с кодировкой UT-8?
Создаю файл таким образом: f = open(file, &quot;w&quot;) f.write(data) f.close() Как сделать так,...

Создать файл с кодировкой ANSI
Создаю новый файл с помощью конструкции: Dim file =...

Записать текст в файл с кодировкой
Делаю программу для хранения паролей, нужно чтоб текст сохранялся в текстовый файл в какой-то...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru