0

Java for Android でいくつかのリソースを読み込もうとしています。これらのリソースは単純なテキスト ファイルであり、その内容を読み取る必要があります。私はそのようなファイルの読み取りと書き込みについてかなりの経験がありますが、現在、何かが壊れています。

これは私が使用しているコードです。

FileInputStream fstream = new FileInputStream("file:///android_asset/Peacefulpack.mod");

Peacefulpack.modしたがって、これを実行すると、次のディレクトリでを検索する必要があります。file:///android_asset/Peacefulpack.mod

ただし、コンソール ログを見ると、Java がこのディレクトリを探していることがわかります。file:///android_asset/Peacefulpack.mod

これは私にFileNotFoundException. どうすればそれを取り除くことができますか?

4

2 に答える 2

1

AssetManager でこのメソッド public final InputStream open (String fileName) を使用します

参照: http://developer.android.com/reference/android/content/res/AssetManager.html#open(java.lang.String)

于 2013-03-31T12:37:07.723 に答える
1

Java for Android でいくつかのリソースを読み込もうとしています。

Android の事​​前定義されたディレクトリに格納されたデータを操作する必要があるため、Android は目的に合わせて直接指定されたメソッドを提供します。

最初にAssetManager、次の方法を提供していることを見てください。

それはおそらくあなたが探しているものです。メソッドはInputStream、assets フォルダーに格納されているファイルを返します。

基本的な使い方:

AssetManager am = this.getAssets(); // or YourActivity.this.getAssets()
   try { // generally Context
      InputStream is = am.open("yourFile.suffix");
   }
   catch (IOException e) {
      Log.w("IOException", e.getMessage());
   }

それはあなたの問題を解決するはずです。

于 2013-03-31T12:51:24.533 に答える