Russian Qt Forum

Qt => Общие вопросы => Тема начата: Sasha от Мая 21, 2014, 13:19



Название: Как в QtCreator-е убрать ошибку: не удалось преобразовать файл в кодировку UTF-8
Отправлено: Sasha от Мая 21, 2014, 13:19
Здравствуйте,
Я работаю в Windows в QtCreator-е 2.8.1. Все файлы у меня в кодировке win1251. При этом всякий раз, когда я открываю файлы с расширением js, QtCreator выдаёт ошибку:
 не удалось преобразовать файл в кодировку UTF-8. Редактирование невозможно
Нажимаю по кнопке "выбрать кодировку", выбираю win1251, нажимаю "перезагрузить в кодировке" и всё нормально отображается и редактируется.
Вопрос в том, что нужно сделать, чтобы эта ошибка не появлялась? И почему для фвйлов с расширением cpp или h этой ошибки не возникает?
Пробовал:
1) Инструменты->параметры...->Текстовый редактор->поведение->Кодировки файлов->По умолчанию: Ставил кодировку win1251, не помогает
2) Проекты->Редактор->Кодировки файлов->По умолчанию: Ставил кодировку win1251, не помогает


Название: Re: Как в QtCreator-е убрать ошибку: не удалось преобразовать файл в кодировку UTF-8
Отправлено: gil9red от Мая 21, 2014, 18:54
Перекодируйте файлы в utf8 без BOM. Например, через Notepad++


Название: Re: Как в QtCreator-е убрать ошибку: не удалось преобразовать файл в кодировку UTF-8
Отправлено: Sasha от Мая 21, 2014, 18:59
Перекодируйте файлы в utf8 без BOM. Например, через Notepad++
А без перекодировки никак? Почему тогда файлы с расширением cpp или h нормально открываются без ошибок, хотя тоже в win1251


Название: Re: Как в QtCreator-е убрать ошибку: не удалось преобразовать файл в кодировку UTF-8
Отправлено: Alex Custov от Мая 21, 2014, 19:06
в настройках задай кодировку по-умолчанию. Вероятно что баг, запиши им в трекер.


Название: Re: Как в QtCreator-е убрать ошибку: не удалось преобразовать файл в кодировку UTF-8
Отправлено: Sasha от Мая 21, 2014, 19:43
в настройках задай кодировку по-умолчанию. Вероятно что баг, запиши им в трекер.
В настройках - это в:
Инструменты->параметры...->Текстовый редактор->поведение->Кодировки файлов->По умолчанию?


Название: Re: Как в QtCreator-е убрать ошибку: не удалось преобразовать файл в кодировку UTF-8
Отправлено: Hrundel от Мая 21, 2014, 21:20
в настройках задай кодировку по-умолчанию. Вероятно что баг, запиши им в трекер.
В настройках - это в:
Инструменты->параметры...->Текстовый редактор->поведение->Кодировки файлов->По умолчанию?

Да


Название: Re: Как в QtCreator-е убрать ошибку: не удалось преобразовать файл в кодировку UTF-8
Отправлено: kambala от Мая 21, 2014, 21:32
для начала поставь свежий креатор. багов с кодировками не замечал.


Название: Re: Как в QtCreator-е убрать ошибку: не удалось преобразовать файл в кодировку UTF-8
Отправлено: Sasha от Мая 22, 2014, 12:38
для начала поставь свежий креатор. багов с кодировками не замечал.
Не хотел качать, но всё же скачал 3.1.1. Результат нулевой - та же ошибка. ПРИЧЁМ, если тупо поменять расширение файла на cpp, то открывается без ошибки. Для простоты сделал простейший тестовый файл, который прилагаю (правда с расширением cpp ибо прилагать с расширением js не получается). Проблемма та же, когда он с расширением js, то при попытке его открыть появляется ошибка, а когда с расширением cpp, ошибки нет.


Название: Re: Как в QtCreator-е убрать ошибку: не удалось преобразовать файл в кодировку UTF-8
Отправлено: kambala от Мая 22, 2014, 13:27
видимо js файлы должны быть всегда в utf8. есть какой-нибудь стандарт javascript?


Название: Re: Как в QtCreator-е убрать ошибку: не удалось преобразовать файл в кодировку UTF-8
Отправлено: Sasha от Мая 22, 2014, 14:57
видимо js файлы должны быть всегда в utf8. есть какой-нибудь стандарт javascript?
Про стандарт о кодировке не знаю, но мне кажется, что, во первых, это должно быть в лучшем случае на уровне рекомендации (ведь в Windows HTML-страница с javascript может быть и win1251), а во-вторых, QtCreator - это же редактор, который поддерживает разные кодировки, так почему же не поддержать кодировки для js-файлов так же, как и для cpp-файлов, тем более, что когда указываешь кодировку, дальнейшее редактирование идёт нормально?