StringGrid.SaveToFile - Кодировка для кириллицы?

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

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

Ответить
Andreich
постоялец
Сообщения: 268
Зарегистрирован: 17.04.2008 12:33:43

StringGrid.SaveToFile - Кодировка для кириллицы?

Сообщение Andreich »

Имеем на форме StringGrid с русскиvм и английским текстом, сохраняет все это при помощи .SaveToFile('file.txt'),.. открываем блокнотом/firefox'ом/writer'ом - видим вместо кириллицы абракадабру. Загружаем этот же файлик обратно при помощи LoadFromFile(), и... о чудо, все показывается как и должно.

Теперь вопрос: в какой кодировке все это добро сохраняется и можно ли принудительно задать нужную кодировку?
Maxizar
постоялец
Сообщения: 385
Зарегистрирован: 20.03.2010 18:48:14

Сообщение Maxizar »

в какой кодировке все это добро сохраняется и можно ли принудительно задать нужную кодировку?

Все дело сохраняется в UTF-8, потому что идет сохранение как xml. подробнее см в коде процедуры сохранения (тема про комбинации клавиш уже была.)
И зачем ее менять, UTF-8 отличная вещь хотя и новая для меня тоже, но чем больше ее узнаю тем больше она мне нравиться.

И самое ГЛАВНОЕ. /firefox'ом/writer'ом, Мой Вам совет пользуйтесь
1- AkelPad
2- NotePad++
3 - Opera - рулит..
Andreich
постоялец
Сообщения: 268
Зарегистрирован: 17.04.2008 12:33:43

Сообщение Andreich »

И notepad++ тоже отображает иерогливы (даже в режиме UTF-8),.. а ты думаешь будто я не пробовал?!

P.S. о том, кто и куда рулит, вопрос весьма спорный,.. дело вкуса. ;)
Maxizar
постоялец
Сообщения: 385
Зарегистрирован: 20.03.2010 18:48:14

Сообщение Maxizar »

Да согласен не будем спорить про вкусы и предпочтения. Но что касается изночального вопроса, то у меня AkelPad 4.4.1 и NotePad++ 5.6.6 (Unicode) открыли этот файл и сразу поняли что кодировка UTF-8 и абра-кадабры не было. А вот AkelPad 3 не смог пришлось помочь и подсказать ему что и как.
Lazarus 0.9.29 SVN 26447 Win XP SP3 Обновления от 20.02.2010
Padre_Mortius
энтузиаст
Сообщения: 1265
Зарегистрирован: 29.05.2007 17:38:07
Откуда: Спб

Сообщение Padre_Mortius »

Под linux все работает корректно. Ошибка похоже в функциях перекодировки
Andreich
постоялец
Сообщения: 268
Зарегистрирован: 17.04.2008 12:33:43

Сообщение Andreich »

Все, разобрался. Взамен 0.9.28 поставил 0.9.29-27028 и проблема исчезла!
Но все же интересно, как же 28я версия умудрялась данные обратно загружать в таблицу, причем без каких-либо нарушений... :?:
Аватара пользователя
leo_bsv
постоялец
Сообщения: 276
Зарегистрирован: 04.08.2010 16:26:10
Откуда: Йошкар-Ола
Контактная информация:

Сообщение leo_bsv »

Padre_Mortius писал(а):Под linux все работает корректно. Ошибка похоже в функциях перекодировки

+1
недавно делал то же самое для combobox...
всё работает,
gedit читает всё...
Andreich
постоялец
Сообщения: 268
Зарегистрирован: 17.04.2008 12:33:43

Сообщение Andreich »

В любом случае, в более поздних версиях эту проблему устранили, так что есть смысл использовать сборки из SVN.
Аватара пользователя
leo_bsv
постоялец
Сообщения: 276
Зарегистрирован: 04.08.2010 16:26:10
Откуда: Йошкар-Ола
Контактная информация:

Сообщение leo_bsv »

Andreich писал(а):В любом случае, в более поздних версиях эту проблему устранили, так что есть смысл использовать сборки из SVN.

обязательно, только svn. каждый сеанс работы начинаю с запуска шела, который апдейтит ide и компилятор... =)
Ответить