2011-05-07 5 views
2

私は以下のコードを持っています。私の考えはOnCreateで、私は/ res/rawのテキストファイルからいくつかのカテゴリを自分のデータベースに移入します。Androidで間違ったRAWリソースにアクセスする

最初に、読み込んだファイルを行(myCatToken)でトークン化し、次にこれらをそれぞれ分割してIDと名前を取得します。

何らかの理由で、rat.txtを読むのではなく、私はまったく別のファイルを取得しています。理由はわかりません。実際に読み込まれるファイルは、/ res/rawフォルダにありますが、名前は異なります。

readTxtFromRawに送信するリソースと関係があるようですが、何が間違っているのかわかりません。参考のため

おかげ

StringTokenizer myCatToken = new StringTokenizer(new String(readTxtFromRaw(R.raw.rat))); 
while(myCatToken.hasMoreTokens()) 
{ 
    StringTokenizer myCatDataToken = new StringTokenizer(myCatToken.nextToken(), ","); 
    String insertString = new String("insert into " + DATABASE_TABLE_CATEGORIES + 
      " (" + KEY_CATEGORIES_CATID + ", " + KEY_CATEGORIES_NAME + ") values " + 
      " (" + myCatDataToken.nextToken() + ", '" + myCatDataToken.nextToken() + "')"); 
    db.execSQL(insertString); 
} 

私は私が使用している。この方法が挙げられます。 mCtxはコンテキストです:

private String readTxtFromRaw(Integer rawResource) throws IOException 
{ 
    InputStream inputStream = mCtx.getResources().openRawResource(rawResource); 
    ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream(); 

    int i = inputStream.read(); 
    while (i != -1) 
    { 
     byteArrayOutputStream.write(i); 
     i = inputStream.read(); 
    } 
    inputStream.close(); 

    return byteArrayOutputStream.toString(); 
} 
+0

生ファイルを表示する.... – Dinash

答えて

1

実際に私はEclipseを閉じて再オープンし、正常に動作します。 Sheesh!

2

「プロジェクト - >クリーン...」に移動して作業領域をクリーニングします。 プロジェクト全体が再びビルドされ、生成されたクラスyour.package.Rがリフレッシュされます。

関連する問題