lr10 -> e1, e2
This commit is contained in:
75
lr10/task_1/e1.java
Normal file
75
lr10/task_1/e1.java
Normal file
@@ -0,0 +1,75 @@
|
||||
package lr10.task_1;
|
||||
|
||||
import org.w3c.dom.Document;
|
||||
import org.w3c.dom.Element;
|
||||
import javax.xml.parsers.DocumentBuilder;
|
||||
import javax.xml.parsers.DocumentBuilderFactory;
|
||||
import java.io.File;
|
||||
|
||||
public class e1 {
|
||||
public static void main(String[] args) {
|
||||
try {
|
||||
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
|
||||
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
|
||||
|
||||
// Создание корневого элемента
|
||||
Document doc = docBuilder.newDocument();
|
||||
Element rootElement = doc.createElement("library");
|
||||
doc.appendChild(rootElement);
|
||||
|
||||
// Добавление первой книги
|
||||
Element book1 = doc.createElement("book");
|
||||
rootElement.appendChild(book1);
|
||||
|
||||
Element title1 = doc.createElement("title");
|
||||
title1.appendChild(doc.createTextNode("Война и мир"));
|
||||
book1.appendChild(title1);
|
||||
|
||||
Element author1 = doc.createElement("author");
|
||||
author1.appendChild(doc.createTextNode("Лев Толстой"));
|
||||
book1.appendChild(author1);
|
||||
|
||||
Element year1 = doc.createElement("year");
|
||||
year1.appendChild(doc.createTextNode("1869"));
|
||||
book1.appendChild(year1);
|
||||
|
||||
// Добавление второй книги
|
||||
Element book2 = doc.createElement("book");
|
||||
rootElement.appendChild(book2);
|
||||
|
||||
Element title2 = doc.createElement("title");
|
||||
title2.appendChild(doc.createTextNode("Мастер и Маргарита"));
|
||||
book2.appendChild(title2);
|
||||
|
||||
Element author2 = doc.createElement("author");
|
||||
author2.appendChild(doc.createTextNode("Михаил Булгаков"));
|
||||
book2.appendChild(author2);
|
||||
|
||||
Element year2 = doc.createElement("year");
|
||||
year2.appendChild(doc.createTextNode("1967"));
|
||||
book2.appendChild(year2);
|
||||
|
||||
// Запись XML-файла
|
||||
doc.setXmlStandalone(true);
|
||||
doc.normalizeDocument();
|
||||
|
||||
javax.xml.transform.TransformerFactory tf = javax.xml.transform.TransformerFactory.newInstance();
|
||||
javax.xml.transform.Transformer transformer = tf.newTransformer();
|
||||
transformer.setOutputProperty(javax.xml.transform.OutputKeys.ENCODING, "UTF-8");
|
||||
transformer.setOutputProperty(javax.xml.transform.OutputKeys.STANDALONE, "yes");
|
||||
transformer.setOutputProperty(javax.xml.transform.OutputKeys.INDENT, "yes");
|
||||
|
||||
javax.xml.transform.dom.DOMSource source = new javax.xml.transform.dom.DOMSource(doc);
|
||||
|
||||
javax.xml.transform.stream.StreamResult result = new javax.xml.transform.stream.StreamResult(
|
||||
new File("example.xml"));
|
||||
|
||||
transformer.transform(source, result);
|
||||
|
||||
System.out.println("XML-файл успешно создан!");
|
||||
|
||||
} catch (Exception pce) {
|
||||
pce.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
48
lr10/task_1/e2.java
Normal file
48
lr10/task_1/e2.java
Normal file
@@ -0,0 +1,48 @@
|
||||
package lr10.task_1;
|
||||
|
||||
import java.io.File;
|
||||
import javax.xml.parsers.DocumentBuilderFactory;
|
||||
import javax.xml.parsers.DocumentBuilder;
|
||||
import org.w3c.dom.Document;
|
||||
import org.w3c.dom.NodeList;
|
||||
import org.w3c.dom.Node;
|
||||
import org.w3c.dom.Element;
|
||||
|
||||
public class e2 {
|
||||
public static void main(String[] args) {
|
||||
try {
|
||||
File inputFile = new File("example.xml");
|
||||
|
||||
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
|
||||
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
|
||||
Document doc = dBuilder.parse(inputFile);
|
||||
|
||||
doc.getDocumentElement().normalize();
|
||||
|
||||
System.out.println("Корневой элемент: " + doc.getDocumentElement().getNodeName());
|
||||
|
||||
NodeList nodeList = doc.getElementsByTagName("book");
|
||||
|
||||
for (int i = 0; i < nodeList.getLength(); i++) {
|
||||
Node node = nodeList.item(i);
|
||||
System.out.println("\nТекущий элемент: " + node.getNodeName());
|
||||
|
||||
if (node.getNodeType() == Node.ELEMENT_NODE) {
|
||||
Element element = (Element) node;
|
||||
|
||||
System.out.println("Название книги: "
|
||||
+ element.getElementsByTagName("title").item(0).getTextContent());
|
||||
|
||||
System.out.println("Автор: "
|
||||
+ element.getElementsByTagName("author").item(0).getTextContent());
|
||||
|
||||
System.out.println("Год издания: "
|
||||
+ element.getElementsByTagName("year").item(0).getTextContent());
|
||||
}
|
||||
}
|
||||
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user