Hej、wheteher android asset entryがファイルまたはディレクトリであることを確認します。
私はいくつかのデータを外部ストレージにコピーする必要があります。いくつかのサブフォルダに入れ子になっており、構造全体をコピーしたいと思います。
/assets
にすべてのリソースのFileオブジェクトを取得するのに苦労しています。しかし私は、私がFile.isDirectory()のようなものを必要としているので、私がそれを依存していると思う。
私の最初のアプローチはAssets Managerでしたが、クラスが必要な情報を提供していないようです。最も有望な理由は、AssetFileDescriptor
を取得し、[FileDescriptor][2]
に移動することでした。しかし、それらのうちのどれもisDirectory
- 方法を持っているようです。
私の他のアプローチはまっすぐです:ファイルオブジェクトを作成し、満足してください。しかし、私はファイルオブジェクトをインスタンス化するための適切なパスがないというこの問題を抱えているようです。私はfile://android_asset
を認識していますが、file
コンストラクタでは動作しません。
私の最後のアイデアは、(私はとにかくコピーするために必要な)InputStreamを利用し、どういうわけか、このリソースがディレクトリであることを示す重要なビットのバイトをフィルタリングします。それはかなりハッキーな解決策であり、おそらく無効である可能性が高いですが、私はそれを回避する別の方法は見当たりません。
また、*** AssetManager.list()***と*** AssetManager.open()***メソッドの両方を組み合わせたhttps://stackoverflow.com/a/46827944/2179872をチェックすることもできます – Cosmin