我刚刚阅读了一些教程,以便从Web解析xml提要并将它们转换为Listview:
URL file = new URL("http://..../file.xml");
SAXParserFactory fabrique = SAXParserFactory.newInstance();
SAXParser parseur = fabrique.newSAXParser();
XMLReader xr = parseur.getXMLReader();
ReglageParseur gestionnaire = new ReglageParseur();
xr.setContentHandler(gestionnaire);
xr.parse(new InputSource(file.openStream()));
Run Code Online (Sandbox Code Playgroud)
一切都很好,我能够解析xml.
我的第二步是将web中的xml文件存储到手机上的xml文件中,并在用户提出时将其更新.(事实上,这个xml文件不应该每6个月更改一次,所以我不想每次都下载它.)
所以,我所做的是将文件存储在手机上并根据用户需求进行更新.
我可以通过以下方式阅读:
fIn = openFileInput("fichier.xml");
InputStreamReader isr = new InputStreamReader(fIn);
char[] inputBuffer = new char[255];
isr.read(inputBuffer);
String readString = new String(inputBuffer);
Run Code Online (Sandbox Code Playgroud)
所以,就目前而言,一切似乎都很好,我快乐.
问题是,当我想在手机上解析新文件时:
xr.parse(InputSource);
Run Code Online (Sandbox Code Playgroud)
我需要一个InputSource作为参数.
所以我的问题是:
如何将手机中的文件转换为InputSource?我成功拥有一个InputStreamReader或String,但想将其转换为InputSource.
非常感谢任何宝贵的帮助
好吧,我不知道Android版本上有哪些构造函数可用,但J2SE InputSource类有一个带Reader参数的构造函数.你试过吗?
或者,为什么不直接从InputStream?构造一个InputSource ?我假设fIn是FileInputStream?为什么不打电话:
InputSource input = new InputSource(fIn);
Run Code Online (Sandbox Code Playgroud)
?
我将字符串转换为InputSource的最佳线路是:
String myStringObject = "Hello this is string object to convert in InputSource";
InputSource inSource = new InputSource(new StringReader(myStringObject));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7090 次 |
| 最近记录: |