从电话/卡内存中读取XML文件,而不是从J2ME中的.jar文件中读取

时间:2012-07-14 11:40:54

标签: xml java-me kxml2

我可以使用

将xml文件添加到资源时解析它
InputStream in = getClass().getResourceAsStream("/data.xml"); 
KXmlParser parser = new KXmlParser();
parser.setInput(new InputStreamReader(in));

但我需要知道如何使用kXML读取xml文件,当它被保存在jar(如手机/卡)内存之外时,还有如何使用kXML编辑它?

2 个答案:

答案 0 :(得分:1)

根据您的问题,我假设您要从手机记忆库或SD卡中读取.xml文件。这里的.xml文件表现为简单的文本文件,因此您需要知道File Connection API以满足您的要求。访问How to read text files

答案 1 :(得分:0)

如果您的目标设备支持来自JSR 172的SAX,您应该使用此解析器而不是kXML。它会减少你的应用程序的最终jar大小(没有导入libs)。在http://www.developer.nokia.com/Community/Wiki/JSR_172:_XML_Parsing_Example有一个很好的示例。它实际上将XML解组为Java对象。对于您的情况,您应该使用FileConnection API,而不是发起 InputStream in = getClass().getResourceAsStream("/JSR172Demo.xml");

然后根据需要更改对象属性。

要将内容写回XML,您可以覆盖toString方法,使其创建您需要的XML字符串。