如何在Blackberry中列出res文件夹的内容?

时间:2012-12-21 10:36:41

标签: blackberry java-me

如何在Blackberry中列出res文件夹的内容? 例如,如果res文件夹有四个文件,我想在一个文件中获取这些文件的名称 字符串数组。

1 个答案:

答案 0 :(得分: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文件中读取目录列表。

就像我说的那样,我很想知道是否有办法在应用程序中执行此操作,但如果没有,那么某种类型的预构建脚本也应该有效。