2012-12-13 23 views
5

私はcsvファイルからsqliteデータベースを作成しようとしました。私はそれがこのページで言われたように:using your own sqlite db in androidとこれはimport csv to sqliteペルシア語のsqliteデータベース

ですが、テーブルには、ペルシア語/アラビア語のデータが含まれている場合があります。 sqliteはその文字を "_"として表示します。 どうすればよいですか?

PS。私はアンドロイドプロジェクトでこのDBを使いたいです。

編集: 私はこのコードを使用してSQLiteのためのCSVをインポート:

CREATE TABLE "android_metadata"("locale" TEXT DEFAULT 'en_US'); 
CREATE TABLE "addresses"(_id integer PRIMARY KEY, 
nametext, meaning text); 
.separator "," 
.import test.csv mydb 
+0

CSVをデータベースにどのようにインポートしますか? –

+0

@BorisStrandjev、u'vはコード – shohreh

+0

を追加しました@shohreh:ペルシア語に基づいてフィールドをソートするにはどうすればよいですか? – smoqadam

答えて

3

sqliteは、UTF-8、UTF-16をサポートしています。これは、アラビア語またはペルシア語を格納するのに十分です。

ほとんどの場合、インポートツールは元のファイルの文字セットとは異なる文字セットを必要とするため、「_」が表示されます。

1

ペルシャ/ペルシア語は、バージョン4.0までのAndroidではサポートされていますが、here上場役立つかもしれないいくつかのものがありますされていません。

また、私はペルシャ語の数値についてはthis stackoverflow questionに出くわしましたが、それはまったく役に立たないでしょう。

私はあなたに似た質問が見つかりました:C# - Does Sqlite database support persian/arabic encoding? を、これは残念ながら否定的な答えを与えるようだ:要するに

:いいえ

SQLiteのサポートにエンコーディングの唯一の非常に、非常に限られた数を:UTF-8とUTF-16(複数の品種)。

幸いなことに、UTF-8はアラビア語やペルシア語、または他の言語(クリンゴンを含む)を表現するのに完全に適しています。

もちろん、あなたのツールチェーンの他の部分がエンコーディングをバングリングしている可能性があります。C#.net SQLiteラッパーとFormsコードのドキュメントをチェックしてください。

+0

アンドロイドに問題はありません。私はcsvをsqlite .dbファイルに変換するときに問題があります。ペイシアン文字を「_」に変更した後 – shohreh

+0

上記の引用文によると、Sqliteはpersion/arabicエンコーディングをサポートしていないため、解析/変換を行う必要がありますCSVファイルで、persion/arabic文字をSQLiteが処理できるものに変更します。 – breadbin

関連する問題