Опять про кодировку русских букв.

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

Re: Опять про кодировку русских букв.

Сообщение kirill » 01.11.2010 00:36:16

модуль и форма
в аттаче
У вас нет необходимых прав для просмотра вложений в этом сообщении.
kirill
новенький
 
Сообщения: 22
Зарегистрирован: 25.10.2010 19:40:45
Откуда: Kaliningrad, RF

Re: Опять про кодировку русских букв.

Сообщение Odyssey » 01.11.2010 00:43:57

Оба файла нужно сохранить в кодировке просто "UTF-8", без BOM. Если Lazarus у вас достаточно новый, это можно сделать через контекстное меню редактора кода - Параметры файла - Кодировка. Если недостаточно новый, то через сторонний достаточно продвинутый текстовый редактор (например Notepad2, Notepad++ под Windows; Medit, Geany под Linux). А потом сделать так, как предлагают Mr. Smart и GAMER.
Odyssey
энтузиаст
 
Сообщения: 580
Зарегистрирован: 29.11.2007 17:32:24

Re: Опять про кодировку русских букв.

Сообщение kirill » 01.11.2010 00:47:04

Odyssey писал(а):Оба файла нужно сохранить в кодировке просто "UTF-8", без BOM. Если Lazarus у вас достаточно новый, это можно сделать через контекстное меню редактора кода - Параметры файла - Кодировка. Если недостаточно новый, то через сторонний достаточно продвинутый текстовый редактор (например Notepad2, Notepad++ под Windows; Medit, Geany под Linux). А потом сделать так, как предлагают Mr. Smart и GAMER.

Я ж говорю, что сделал разные (в том числе и с BOM и без). А также ANSI, CP1251 (правда так и не понял почему они отдельно?) и KOI-8R
kirill
новенький
 
Сообщения: 22
Зарегистрирован: 25.10.2010 19:40:45
Откуда: Kaliningrad, RF

Re: Опять про кодировку русских букв.

Сообщение Mr.Smart » 01.11.2010 00:55:29

kirill
У вас используется кодировка UTF-8 с BOM. Кажется были проблемы с BOM. Прилепляю файлы в кодировке UTF-8 без BOM.
Mr.Smart
долгожитель
 
Сообщения: 1796
Зарегистрирован: 29.03.2008 01:01:11
Откуда: из леса!

Re: Опять про кодировку русских букв.

Сообщение GAMER » 01.11.2010 00:57:39

2 Mr.Smart.
Прошу прощения - не увидел.
Аватара пользователя
GAMER
энтузиаст
 
Сообщения: 627
Зарегистрирован: 06.08.2008 13:41:07
Откуда: Ужгород-Днепр, Украина

Re: Опять про кодировку русских букв.

Сообщение VirtUX » 01.11.2010 01:00:08

У меня все русские слова нормально отображаются...
ОС - openSUSE 11.3. Lazarus 0.9.29 Qt, fpc 2.4.0
Аватара пользователя
VirtUX
энтузиаст
 
Сообщения: 880
Зарегистрирован: 05.02.2008 10:52:19
Откуда: Крым, Алушта

Re: Опять про кодировку русских букв.

Сообщение Odyssey » 01.11.2010 01:16:27

kirill писал(а):сделал разные (в том числе и с BOM и без).

Понял. Тогда
kirill писал(а):Перенёс проект из Дельфи.

как переносили? Если через конвертер Delphi-проектов, можно попробовать перенести без него.
Odyssey
энтузиаст
 
Сообщения: 580
Зарегистрирован: 29.11.2007 17:32:24

Re: Опять про кодировку русских букв.

Сообщение kirill » 01.11.2010 08:52:26

Mr.Smart писал(а):kirill
У вас используется кодировка UTF-8 с BOM. Кажется были проблемы с BOM. Прилепляю файлы в кодировке UTF-8 без BOM.

не помогло
скрин


Odyssey писал(а):как переносили? Если через конвертер Delphi-проектов, можно попробовать перенести без него.

Это не я переносил. Это я нашел топик, где такой вопрос уже задавали. Я написал новый проект с 0. Это мой первый проект на lazarus за последние года 2-3. Раньше с таким не сталкивался.
Кстати, может у меня проблемы из-за операционки - у меня Windows XP, а не Linux.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
kirill
новенький
 
Сообщения: 22
Зарегистрирован: 25.10.2010 19:40:45
Откуда: Kaliningrad, RF

Re: Опять про кодировку русских букв.

Сообщение dunin » 01.11.2010 09:23:29

Тэкс... похоже тут надо картинко... Поехали пошагово...

Открываем файл во вложении - привязываем его к пустому проекту получаем кракозябры
Изображение

Меняем кодировку на UTF-8
Изображение

На запрос об изменении файла соглашаемся
Изображение

Получаем вот чего
Изображение

Добавлено спустя 1 час 21 минуту 5 секунд:
kirill писал(а):А также ANSI, CP1251 (правда так и не понял почему они отдельно?)

ANSI - кодировка Виндуса
CP1251 - кодовая страница с кириллицей/рус

Если у вас установлена не русифицированная версия Виндуса, то ANSI <> CP1251

Общий случай - другая кодовая страница. Например (еще одни возможные грабли) - вы работаете в Linux с кодовой страницей UTF-8 и пытаетесь парсить файл в кодировка cp1251. По привычке используем SysToUTF8 - не работает. Сразу сообразив почему используем AnsiToUTF8 - упс... опять не работает. Тогда берем СP1251ToUTF8 (юнит LConvEncoding) и получаем нужный результат.
Аватара пользователя
dunin
энтузиаст
 
Сообщения: 634
Зарегистрирован: 02.05.2007 13:18:11
Откуда: Тољя††и

Пред.

Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 48

Рейтинг@Mail.ru