Blackberry の res フォルダの内容を一覧表示するにはどうすればよいですか? たとえば、res フォルダーに 4 つのファイルがある場合、それらのファイルの名前を文字列配列で取得したいと考えています。
1 に答える
私はこれについて間違っていることを望みますが、あなたがそれを行うことができるかどうかはわかりません. 私は以前に似たようなことを試しましたが、解決策は見つかりませんでした。
フォルダー内の既知のファイルres\
、またはおそらく最上位のres
ディレクトリ自体への参照を取得しようと考えました。そこから、ディレクトリ ツリーの内容を列挙します。
問題は、やっているということです
InputStream input = getClass().getResourceAsStream("/res/img/icon.png");
InputStream
これは、ファイルシステム情報へのアクセスを提供しません (これは単なるストリームであり、抽象化されています) 。
そして、ファイル接続を取得しようとすると
FileConnection conn = (FileConnection) Connector.open("local:///img/icon.png");
Connector クラスはプロトコルをサポートしていないと言われます ( URL スキームlocal:///
も試しましたが、うまくいきませんでした)。cod:///
回避策
私が提案する唯一のことは、リソース フォルダーは読み取り専用フォルダーであるため、ビルド時にその内容を一覧表示できるはずであり、実行時にアプリ内でそれを行う必要がないことです。
使用しているビルド システム (Eclipse プラグイン、bb-ant-tools、JDE など) はわかりませんが、デスクトップ Java アプリケーションを作成して、プロジェクトのres/
フォルダーを解析し、内容をxmlに書き込むことは確かに可能です。ファイルであり、これもres/
フォルダーに配置されます。
次に、実行時に xml ファイルからディレクトリ リストを読み取ることができます。
私が言ったように、アプリでこれを行う方法があるかどうか知りたいのですが、ない場合は、何らかのビルド前のスクリプトも機能するはずです。