Lazarus и русская кодировка

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

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

Lazarus и русская кодировка

Сообщение fre012 » 10.07.2018 12:16:06

Здравствуйте.
Пару лет над\зад делал небольшую прогу, все работало.
Она читает эксель-файл и пишет в текстовый файл кирилицу.
Работал через функции SysToUTF8 UTF8ToSys
все работало, сейчас надо внести неб. изменения в проект и теперь установил новый лазарус 1,8,4
И теперь при компиляции вместо русских букв абракадабра.
Попробовал удалить везде эти вызовы: SysToUTF8 UTF8ToSys - не помогло.

Что не так?
Что надо адаптировать, какие функции или настройки применить?
fre012
незнакомец
 
Сообщения: 1
Зарегистрирован: 10.07.2018 12:10:29

Re: Lazarus и русская кодировка

Сообщение Dakor » 10.07.2018 23:00:20

А Вы используете FileUtil.UTF8ToSys или LazUTF8.UTF8ToSys? Сейчас нет лазаруса под рукой - посмотрите функции модуля LazUTF8
Dakor
новенький
 
Сообщения: 16
Зарегистрирован: 15.04.2018 00:01:01

Re: Lazarus и русская кодировка

Сообщение SSerge » 12.07.2018 05:05:19

fre012 писал(а):Что не так?


1. Исполняющая система (RTL) теперь в UTF8, а не в дефолтовой кодировке ОС, как было раньше.
2. На строках появился идентификатор кодовой страницы, и присвоения между разными переменными делаются с его учетом, что иногда вызывает плохо понимаемую перекодировку.

Добавлено спустя 5 минут 34 секунды:
а, да. UTFtoSYS работают по преобразованию кодировки строки в кодировку RTL по умолчанию. Читай: в лазарусе, при подобных настройках RTL - не делают ничего.

...либо применяйте явное преобразование utf8tocp1251, либо разбирайтесь, как работает внутренняя конверсия строк, без использования lazutf8
SSerge
энтузиаст
 
Сообщения: 971
Зарегистрирован: 12.01.2012 05:34:14
Откуда: Барнаул

Re: Lazarus и русская кодировка

Сообщение Снег Север » 12.07.2018 08:06:02

Убрать в программе все перекодировки, а файл экселя писать в UTF8 - это умеют все эксели, кроме самых древних.
Аватара пользователя
Снег Север
долгожитель
 
Сообщения: 2993
Зарегистрирован: 27.11.2007 16:14:47

Re: Lazarus и русская кодировка

Сообщение fedan » 12.07.2018 21:07:30

fedan
новенький
 
Сообщения: 70
Зарегистрирован: 15.09.2016 21:18:48


Вернуться в Lazarus

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

Сейчас этот форум просматривают: Alex2013 и гости: 46

Рейтинг@Mail.ru