我在可绘制文件夹中有一个 XML 文件。我想使用 XML 解析(sax 解析)解析 XML 文件。
我为此使用了以下代码:
private void getDataFromFile(int mntFile) throws SAXException, IOException {
// TODO Auto-generated method stub
SAXParserFactory factory = SAXParserFactory.newInstance();
System.out.println("in method");
try {
saxParser = factory.newSAXParser();
} catch (ParserConfigurationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
DefaultHandler handler = new DefaultHandler() {
boolean id = false;
boolean name = false;
boolean dep = false;
public void startElement(String uri, String localName,String qName,
Attributes attributes) throws SAXException {
//System.out.println("in start");
if (localName.equals("DOCTORID")) {
id = true;
}
if (localName.equals("NAME")) {
name = true;
}
if (localName.equals("DEAPRTMENT")) {
dep = true;
}
}
public void endElement(String uri, String localName,
String qName) throws SAXException {
}
public void characters(char ch[], int start, int length) throws SAXException {
if (id) {
id = false;
}
if (name) {
System.out.println("Name : " + new String(ch, start, length));
mArryLstDoctorNames.add(new String(ch, start, length));
Log.d("doctor","---"+mArryLstDoctorNames);
name = false;
}
if (dep) {
dep = false;
}
}
};
saxParser.parse(R.drawable.myxml, handler);
}
但是这里saxParser.parse(R.drawable.myxml, handler);
显示编译错误。
它与适用于 sdcard 上的 XML 文件的代码相同。