SHOW:
|
|
- or go back to the newest paste.
| 1 | - | Чтоб отдельный тред не создавать. |
| 1 | + | File file = new File("test.xml");
|
| 2 | try {
| |
| 3 | - | Нужно распарсить некое расписание в формате XML, которого могут быть 2 варианта. |
| 3 | + | DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance(); |
| 4 | - | Сделать это надо на Java, в которой я не слишком хорошо ориентируюсь и вообще с XML работаю впервые. |
| 4 | + | documentBuilderFactory.setValidating(false); |
| 5 | - | Пока хочу хотя бы вывести это на экран, да забить значения в соответствующие переменные. По хорошему все это должно добавлятся в БД, но позже, с этим бы разобраться. |
| 5 | + | DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder(); |
| 6 | Document document = documentBuilder.parse(file); | |
| 7 | - | Структура документа будет такая: |
| 7 | + | |
| 8 | document.getDocumentElement().normalize(); | |
| 9 | - | `` |
| 9 | + | |
| 10 | org.w3c.dom.Element date = document.getDocumentElement(); | |
| 11 | - | <data> |
| 11 | + | |
| 12 | System.out.println("Корневой элемент: " + date.getNodeName());
| |
| 13 | - | <week id = "0"> |
| 13 | + | System.out.println("--------------------");
|
| 14 | - | <day id = "0" DayName = "Понедельник" ShortDayName = "Пн."> |
| 14 | + | |
| 15 | - | <task id="0" time = "8:00" endTime = "9:30"> |
| 15 | + | |
| 16 | - | <title1> текст1 </title1> |
| 16 | + | NodeList weeks = date.getElementsByTagName("week");
|
| 17 | - | <title2> текст2 </title2> |
| 17 | + | NodeList week = weeks.item(1).getChildNodes(); |
| 18 | - | ... |
| 18 | + | NodeList day = week.item(1).getChildNodes(); |
| 19 | - | </task> |
| 19 | + | |
| 20 | - | <task id="1" time = "9:45" endTime = "11:15"> |
| 20 | + | System.out.println(weeks.item(1).getAttributes().getNamedItem("day"));
|
| 21 | - | ... |
| 21 | + | System.out.println(day.item(1).getAttributes()); |