からのjava.io.Fileを取得するにはどのように私は私のAndroid Studioプロジェクトに生のリソースを追加しました: R.rawリソース
は、その後、私はそれを指してjava.io.File
インスタンスを取得する必要があります。
私は3つのことを試してみましたが、ファイルが見つからないとFile.exists()
が等しい偽です:
// Option 1:
//
// com.example.myapp:raw/plano_metrobus
//
val fileName = resources.getResourceName(R.raw.plano_metrobus)
Log.w("xxx", fileName)
Log.w("xxx", File(fileName).exists().toString())
// Option 2
//
// android.resource://com.example.myapp:raw/plano_metrobus
//
val uri = Uri.parse("android.resource://" + fileName)
Log.w("xxx", uri.toString())
Log.w("xxx", File(uri.toString()).exists().toString())
// Option 3
//
// android.resource://com.example.myapp/2131427328
//
val uri2 = Uri.parse("android.resource://" + packageName + "/" + R.raw.plano_metrobus)
Log.w("xxx", uri2.toString())
Log.w("xxx", File(uri2.toString()).exists().toString())
File
オブジェクトを作成するための正しい方法は何ですか?
私は[ParcelFileDescriptor](https://developer.android.com/reference/android/os/ParcelFileDescriptor.html)を使用しています、と私は代替が表示されません。ストリームをコピーするオプションを試してみます。 – kiewic
PdfRendererで使用する。 – kiewic
「あなたの開発マシン上のファイルですが、正しくは聞こえません。 'raw'リソースはapkにあります – njzk2