2017-08-09 9 views
0

サードパーティAPIを使用しているため、APIのメソッドに文字列「ファイルパス」を渡そうとしています。 API。アンドロイドアプリのファイルインプットストリーム(文字列ファイル名)経由のアセットフォルダ内のファイル

このファイルは、APIが機能するために必要な一連のパラメータを含むすべての設定手順を含むテキストファイルです。アンドロイドデバイスのapkのassetsフォルダにあるファイルの文字列ファイルのパスをプログラムで取得するにはどうすればよいですか?

答えて

0

APIの機能を使用するために、サードパーティAPIを使用しているため、APIのメソッドに文字列「ファイルパス」を渡そうとしています。

InputStreamまたはReaderを受け入れる、より良いライブラリを探します。そのライブラリを作成した人がthis blog postになっていることを指摘して、問題の説明に役立ててください。

アンドロイドデバイスのapkのassetsフォルダにあるファイルの文字列ファイルパスをプログラムで取得するにはどうすればよいですか?

アセットがデバイス上のファイルではないため、そうではありません。それらは開発マシン上のファイルのみです。

唯一の選択肢は、標準のJava I/Oを使用して、アセットのコンテンツを制御する一部のファイル(たとえば、getCacheDir())にコピーし、そのファイルをライブラリで使用することです。

+0

残念ながら、APIの状況はコントロールできません。 2番目のポイントは、私はデバイス上のファイルを作成し、テキストファイル内の何をコピーすることをお勧めですか? –

+0

@BrandtSmith:はい。そのアセットのコンテンツを含むファイルを持つことが唯一の選択肢です。そのため、 'AssetManager'と' open() 'を使ってアセットの内容に' InputStream'を取得し、 'File'で' FileOutputStream'を作成し、Java I/Oを使ってストリーム間をコピーします。終了したら、 'FileInputStream'を閉じ、' File'をAPIで使います。 – CommonsWare

+0

ありがとうございました!私はこれに長続きしてきた。 –

関連する問題