私は以下のコードを持っています。私の考えは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();
}
生ファイルを表示する.... – Dinash