База данных sqlite на персидском языке
Я пытался создать базу данных sqlite из CSV-файла. Я сделал это, как сказано на этой странице: с помощью вашей собственной базы данных sqlite в Android и это: импорт CSV в SQLite
но проблема в том, что таблица содержит данные на фарси / арабском языке. sqlite показывает этот символ как "_". что я должен делать?
PS. Я хочу использовать эту БД в проекте Android.
редактировать: я импортирую CSV в SQLite, используя этот код:
CREATE TABLE "android_metadata"("locale" TEXT DEFAULT 'en_US');
CREATE TABLE "addresses"(_id integer PRIMARY KEY,
nametext, meaning text);
.separator ","
.import test.csv mydb
2 ответа
sqlite поддерживает UTF-8, UTF-16, и этого вполне достаточно для хранения арабского или персидского языков.
Скорее всего, вы получите "_", потому что инструмент импорта ожидает другую кодировку, чем кодировка вашего исходного файла.
Персидский / фарси не поддерживается в Android до версии 4.0, но есть некоторые вещи, которые могут вам помочь, перечисленные здесь.
Я также натолкнулся на этот вопрос о стековом потоке о персидских числах в SQL, хотя я не уверен, что это поможет вообще.
Я нашел вопрос, похожий на ваш: C# - База данных Sqlite поддерживает персидское / арабское кодирование? и это, кажется, дает, к сожалению, отрицательный ответ:
Короче говоря: нет.
SQLite поддерживает только очень и очень ограниченное количество кодировок: UTF-8 и UTF-16 (несколько разновидностей).
К счастью, UTF-8 идеально подходит для выражения арабского, персидского или любого другого языка (включая клингонский, если вас захватит фантазия).
Конечно, возможно, что какая-то другая часть вашего набора инструментов запутывает кодировку, проверьте документацию для оболочки SQLite для C#.net и ваш код Forms.