如何列出黑莓中 res 文件夹的内容?例如,如果 res 文件夹有四个文件,我想在 String 数组中获取这些文件的名称。
问问题
138 次
1 回答
1
我很想在这方面犯错,但我不确定你能做到这一点。我以前尝试过类似的方法,但从未找到解决方案。
我考虑过尝试获取对我文件夹中的一个已知文件的引用res\
,或者可能是顶级res
目录本身。从那里,我将枚举目录树的内容。
问题是这样做
InputStream input = getClass().getResourceAsStream("/res/img/icon.png");
会给你一个InputStream
,它不会让你访问文件系统信息(它只是一个流,它是一个抽象)。
而且,如果您尝试获取文件连接
FileConnection conn = (FileConnection) Connector.open("local:///img/icon.png");
您会被告知 Connector 类不支持该local:///
协议(我也尝试过使用cod:///
URL 方案,但没有运气)。
解决方法
我唯一建议的是,由于您的资源文件夹是只读文件夹,您应该能够在构建时列出它们的内容,而不必在运行时在您的应用程序中进行。
我不知道您使用的是哪个构建系统(例如 Eclipse 插件、bb-ant-tools、JDE 等),但您当然可以编写一个桌面 Java 应用程序来解析您的项目res/
文件夹并将内容写入xml文件,该文件也将放置在您的res/
文件夹中。
然后,在运行时,您可以从 xml 文件中读取目录列表。
就像我说的,我很想知道应用程序中是否有办法做到这一点,但如果没有,某种预构建脚本也应该可以工作。
于 2012-12-23T06:45:13.793 回答