-2

すべてのリソースがあるかどうかを確認する必要があるテストクラスを開発しています。ファイル名(png)でリソースにアクセスすることは必須の仕様です。

リソースとしてロードする可能性があることは知っていますが、リソースをロードできません。私はテストアプリを開発しています。file.pngres / drawableという名前のファイルにアクセスするにはどうすればよいですか?

new FileOutputStream("/res/drawable/xxx.png");
4

1 に答える 1

0

Androidドキュメントの「リソースの概要」を読むことをお勧めしますが、問題がリソースへのアクセスのみに関するものである場合は、「リソースへのアクセス」をお読みください。

夏らしい、状況に応じてリソースにアクセスする方法がいくつかあります。たとえば、リソースの名前やIDがわかっている場合などです。また、リソースにアクセスする場所によっても異なります。

あなたの場合、あなたはあなたのコードでにアクセスしたいと思いますdrawable、それが本当なら、あなたはこのようにすることができます:

R.drawable.xxx

たとえば、.pngファイルの名前がmyimageであり、 ImageViewでimという名前で設定する必要がある場合は、次のようにします。

ImageView im = ...;
im.setImageResource(R.drawable.myimage);

編集

InputStreamリソース内のフォームファイルを取得する必要がある場合は、 rawresディレクトリ内にフォルダを作成してその中にファイルを配置し、アクティビティまたはウィジェットからgetResources()。openRawResource(resourceName)を呼び出すことを検討する必要があります。例:

InputStream ins = getResources().openRawResource(R.raw.test);

ここで、rawフォルダにあるファイルはたとえばtest.pngです。

あなたはここでより多くの詳細を見ることができます:

Androidで生のリソースとしてファイルを使用する

Android:AssetsフォルダーとRawフォルダーからファイルを読み込んでいます

スタックオーバーフロー

スタックオーバーフロー

スタックオーバーフロー

最後に、リソースから出力ファイルを作成し、そこからInputStreamを取得して、そのコンテンツをOutputStreamに書き込む場合は、ここで良い例を見ることができます。

于 2012-11-23T18:46:13.377 に答える