Помогите разобратся. Есть файл в кодировке 866 нужно его прочитать и записать в базу firebird но уже в кодировке 1251 или uft8.
Пробывал через synachar работать, какая то фигня получается в базу заполняются одни знаки подчеркивания.
Через iconvenc не смог разобратся с параметрами.
Помогите решить проблему.
изменение кодировки cp866 -> cp1251
Модератор: Модераторы
Прилагаю модуль coder.pas. В нем я реализовал перекодировку UTF8, CP-1251, OEM866. Сам пользуюсь без проблем. Найдешь, вдруг, ошибку - отпишись.
- Вложения
-
- coder.pas.tar.gz
- coder.pas
- (3.7 КБ) 1033 скачивания
большое спасиба. dos to win работает отлично.
Пробовал преобразовать все ок , но когда в мемо заганяю через Memo1.Lines.Add кодировка все равно OEM866 как быть?
Код: Выделить всё
cat input | iconv -f cp866 -t cp1251 > output- *Rik*
- постоялец
- Сообщения: 453
- Зарегистрирован: 19.04.2011 12:18:51
- Откуда: Урал
- Контактная информация:
virus_hm писал(а):Помогите разобратся. Есть файл в кодировке 866 нужно его прочитать и записать в базу firebird но уже в кодировке 1251 или uft8.
Пробывал через synachar работать, какая то фигня получается в базу заполняются одни знаки подчеркивания.
Через iconvenc не смог разобратся с параметрами.
Помогите решить проблему.
В Lazarus есть готовый модуль lconvencodinc, его подключаете в раздел uses.
В модуле есть функция cp866ToUTF8, перед записью в базу строки конвертируете в UTF8. В настройках компонента Database для доступа к данным FireBird, ставите кодировку на клиенте UTF8, не зависимо от того, какая кодировка в базе.
