Java android用阿拉伯文编写sqlite文件

Java android用阿拉伯文编写sqlite文件,java,android,sqlite,arabic,file-writing,Java,Android,Sqlite,Arabic,File Writing,我有一个自定义方法来 将数据库从资产文件夹复制到数据库目录 AssetManager am = myContext.getAssets(); OutputStream os = new FileOutputStream(DBFile); DBFile.createNewFile(); byte []b = new byte[1024]; int i, r; String []Files = am.list(""); Arrays.sort(

我有一个自定义方法来
将数据库从资产文件夹复制到数据库目录

    AssetManager am = myContext.getAssets();
    OutputStream os = new FileOutputStream(DBFile);
    DBFile.createNewFile();
    byte []b = new byte[1024];
    int i, r;
    String []Files = am.list("");
    Arrays.sort(Files);
    for(i=1;i<5;i++)        {
        String fn = String.format("0%d.database", i);
        if(Arrays.binarySearch(Files, fn) < 0)
            break;
        InputStream is = am.open(fn);
        while((r = is.read(b)) != -1)
            os.write(b, 0, r);
        is.close();
    }
    os.close();
AssetManager am=myContext.getAssets();
OutputStream os=新文件OutputStream(DBFile);
DBFile.createNewFile();
字节[]b=新字节[1024];
int i,r;
String[]Files=am.list(“”);
数组。排序(文件);
for(i=1;i语言)和set
系统语言为阿拉伯语,重新安装应用程序后,会崩溃并导致数据库崩溃
文件未复制到数据库目录。这只是一个空白文件

我想也许我应该用指定的编码读取数据库文件
因为java dhe在我改变语言的那一刻必须改变一些东西。

“它崩溃了”——使用LogCat检查与崩溃相关的java堆栈跟踪:我知道问题在于该函数,但它没有错误。如何修改该方法以显示堆栈跟踪?因为它显示了一个sqlite错误,因为空数据库文件导致找不到表。“它没有错误”--那么您如何确定“它崩溃了”?因为正如我所说,它崩溃是因为sqlite数据库上的错误,它说,错误,找不到表。找不到表,因为数据库文件为空。你明白吗?
fn
不同吗?