SQLite и ANSI кодировка

Форум посвящён работе с базами данных в .NET.

Модератор: Ramzes

VVitafresh
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1641
Зарегистрирован: 12.05.2005 (Чт) 14:44
Откуда: Херсон, UA

SQLite и ANSI кодировка

Сообщение VVitafresh » 09.09.2009 (Ср) 9:51

Есть база SQLite, созданная не мной. Пробую подключиться к ней при помощи провайдера http://sqlite.phxsoftware.com и получаю вместо кириллических символов замечательные квадратики: ����_�����

При этом если смотреть базу через SQLite Expert Professional, то в опциях есть опция "Default ANSI code page", после установки которой чудесным образом проявляются нормальные кириллические символы.

Что нужно сделать, чтобы симитировать опцию "Default ANSI code page" при подключении через ADO.NET провайдер? Возможно какие-то опции в ConnectionString?
Никакую проблему невозможно решить на том же уровне, на каком она возникла. Нужно стать выше этой проблемы, поднявшись на следующий уровень.

VVitafresh
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1641
Зарегистрирован: 12.05.2005 (Чт) 14:44
Откуда: Херсон, UA

Re: SQLite и ANSI кодировка

Сообщение VVitafresh » 10.09.2009 (Чт) 23:33

Проблему вроде бы решил. В тех коннекторах, которые я смотрел, не удалось найти параметры строки подключения, позволящие указать кодировку отличную от UTF-8 или UTF-16. Поэтому я взял врапер: http://www.codeproject.com/KB/database/ ... apper.aspx

В нем достаточно заменить строки:
Код: Выделить всё
Encoding encoding = Encoding.UTF8;
на
Код: Выделить всё
Encoding encoding = Encoding.GetEncoding(1251);
и ANSI кодировка (cp1251) читается корректно.
Никакую проблему невозможно решить на том же уровне, на каком она возникла. Нужно стать выше этой проблемы, поднявшись на следующий уровень.


Вернуться в ADO.NET

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

Сейчас этот форум просматривают: Yandex-бот и гости: 2

    TopList