解析android中的xml文件
问题描述:
我正在开发一个使用普通java应用程序的代码的android应用程序。 在这个Java应用程序我解析的XML文件,我得到这样的:解析android中的xml文件
File xmlFile = new File("../project/src/resources/words.xml");
现在的Android这似乎并没有工作。我得到一个文件未找到异常。 我试图将该文件保存在res/xml
目录中,但我不确定如何实现。
我可以使用相同的代码来解析XML,因为我用于我的Java应用程序,或者有没有一种特殊的方式来解析android中的XML文件?
答
什么是../project/src/resources.words.xml
?这是开发计算机上的项目目录中的路径名吗?当然,Android程序不会访问您计算机上定义的文件路径。
如果words.xml
是您想要访问的静态文件,则应将其包含在项目的/res/raw
子目录中。然后,你可以使用文档在这里描述的方法访问它:
http://developer.android.com/reference/android/content/res/Resources.html#openRawResource(int)
或者,你可以把它放在/assets
并使用此方法:
http://developer.android.com/reference/android/content/res/AssetManager.html
答
你可以这样做:
InputStream is = this.getResources().openRawResource(resourceId);
BufferedReader br = new BufferedReader(new InputStreamReader(is));
... then read the content of the file as a stream ...
您的文件必须放在res/raw/yourfile
和resourceId
是R.raw...
中对应于您的文件名的整数(R.raw.yourfile
)
我使用了/ assets方法,它使用了我的旧xml解析方法 – hhh3112 2012-04-18 18:05:21