複数の.epubファイルがアセットにあります。すべての.epubファイルをlistFile
にします。私の古いコードでは、私はこの複数のファイルを読み込むためにファイル内にアセットのパスを取得する
File myFile = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/Files");
File listFile[] = myFile.listFiles();
if (listFile != null && listFile.length > 0) {
for (int i = 0; i < listFile.length; i++) {
if (listFile[i].getName().endsWith(".epub")) {
myNewBookModels = new NewBookModels();
Log.i(TAG, "getEpubFilesFromFileManager: " + ".." + listFile[i].getName());
myNewBookModels.setBookName(listFile[i].getName().toString());
myNewBookModels.setBookPath(listFile[i].getPath().toString());
myNewBookModels.setBitmap(bookLoaded(listFile[i].getName().toString()));
arrayList.add(myNewBookModels);
}
}
}
のように、ファイルを取得するための.epub、外部ストレージのファイルパスを使用しますが、私は、資産フォルダからの.epubファイルことをしたいです。これどうやってするの?
私も
1というの.epubファイルからこのフィールドをしたい)名前
2)パス
3)ビットマップ(表紙イメージ)
それは私のために必須です。これは、File
でのみ可能ですが、資産が必要です.epubファイルFile
を、あなたは詳細に説明してくださいすることができます。 –
私はあなたのファイルが外部記憶装置にあったときに、それらが可変パスを持つかもしれないことを意味しました。その場合、実行時にパスを取得する必要があります。しかし今、あなたのファイルがアンドロイドのアセットフォルダにあるとき、それは常にすべてのデバイスで修正されます。したがって、実行時にパスを取得する必要はありません。あなたはハードコーディングされたパスを与えることができます。 &典型的なAndroidスタジオプロジェクトでは、メイン/ソースセット(プロジェクトルートのapp/src/main/off)を持つapp/moduleがあるので、あなたのプライマリアセットはapp/src/main/assets/。名前の場合:String [] listOfFileName = getContext()。getAssets()。list( "your/path"); – Charu
String [] listOfFileName = getContext()。getAssets()。list( "あなたの/ path/inside/asset"); – Charu