I am trying to parse a .plist file in Java but not understanding how. I used a DOM parser but it gives an error and is not able to read .plist file.
This is my plist file:
xml version="1.0" encoding="UTF-8"?>
All Samples
Message
1) UIATarget
Timestamp
2011-07-06T19:40:09Z
Type
0
This my main function:
public static void main(String[] args) throws XMLStreamException, IOException {
InputStream in = new FileInputStream("File.plist");
XMLInputFactory factory = XMLInputFactory.newInstance();
XMLEventReader parser = factory.createXMLEventReader(in);
assert parser.nextEvent().isStartDocument();
XMLEvent event = parser.nextTag();
//System.out.println(event.getClass());
assert event.isStartElement();
final String name1 = event.asStartElement().getName().getLocalPart();
if (name1.equals("dict")) {
while ((event = parser.nextTag()).isStartElement()) {
final String name2 = event.asStartElement().getName().getLocalPart();
if (name2.equals("key")) {
String key = parser.getElementText();
System.out.println("key: " + key);
} else if (name2.equals("String")) {
String number = parser.getElementText();
System.out.println("date: " + number);
} else if (name2.equals("date")) {
String str = parser.getElementText();
System.out.println("date: " + str);
}
}
}
assert parser.nextEvent().isEndDocument();
}
解决方案
If I were you I'd use the PList class from code.google.com/xmlwise. It's specifically designed for dealing with .plist files.