

Androidアプリ開発でのDBの利用方法についての質問です。

〇実現したいこと  
アプリ内でDBをCREATEするのではなく、既存のDBをアプリ内に取り込んで利用する。

〇疑問  
1、以下のサイト（<http://y-anz-m.blogspot.jp/2011/01/android-sqline-
database.html>）を参考にassetsフォルダ内にDBファイルをおいたところ次のようなエラーが出た。  
[![Projectのassetsフォルダ内に既存のＤＢを保存したときのエラー](https://i.stack.imgur.com/iPyhy.png)](https://i.stack.imgur.com/iPyhy.png)

SQLiteで確認したところ文字コードはUTF-8になっているので何が間違っているのかわからない。

2、そもそも既存のDBを使用する方法はほかにはないのか（探したところウェブサイトに有益な情報はなかった）。

〇発生したエラー  
「File was loaded in the wrong encoding:'UTF-8'」

Androidアプリ開発に詳しい方、回答よろしくお願いいたします。


CC BY-SA 3.0
2018-01-30T03:56:34.747
41317
2018-02-01T01:59:03.647
2018-01-30T06:17:37.673
27149
27149
question
android android-studio database
Androidアプリ開発～既存のＤＢの読み込み～


sqliteのデータベースファイルはテキストではないので、ソースコードのように中身を直接エディタで見たり編集したりすることはできません。


CC BY-SA 3.0
2018-01-30T13:56:25.267
41332
2018-01-30T13:56:25.267
5793
41317
answer


エラーメッセージ：「File was loaded in wrong encoding:
'UTF-8'」(直訳：ファイルはエンコードするのは不適切なUTF-8として収納されました)と  
質問中の「SQLiteで確認したところ文字コードはUTF-8になっている」のふたつから推測されるのは、  
『assetsフォルダ内に置いたDBファイルで使われている文字コードがUTF-8ではない』という事です。

既存のDBに由来するファイルかと思われますが、そのファイルがSQLiteでは読み込めていないので、ファイルの生成方法の見直し（文字コードをUTF-8に指定してexportする等）や文字コードの変換などを検討してください。


CC BY-SA 3.0
2018-02-01T01:59:03.647
41366
2018-02-01T01:59:03.647
217
41317
answer