lr10 -> e1, e2
This commit is contained in:
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
.vscode/*
|
||||||
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