Java針對XML檔案的操作大集合
XML是工作上常用到的資料交換格式,會需要利用JAVA進行XML資料的新增、修改或刪除,這裡把相關的方法記錄下來。
下述範例會存取在C:\Projects\Javas\中的sample.xml檔,而檔案中已經有以下的內容:
<?xml version="1.0" encoding="utf-8"?> <root> <item> <productID>10001</productID> <productName>產品名稱1</productName> <productPrice>10</productPrice> </item> <item> <productID>10002</productID> <productName>產品名稱2</productName> <productPrice>20</productPrice> </item> <item> <productID>10003</productID> <productName>產品名稱3</productName> <productPrice>30</productPrice> </item> </root>
利用Java存取XML我選用的Library是dom4j,可參考官網的介紹,以下是JAVA存取的程式範例:
package CDIT.stanley; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.UnsupportedEncodingException; import java.util.Iterator; import org.dom4j.io.OutputFormat; import org.dom4j.io.XMLWriter; import org.dom4j.Document; import org.dom4j.DocumentException; import org.dom4j.Element; import org.dom4j.io.SAXReader; public class dom4jXMLFullSample { //新增XML Node內容 public static String XMLAppendNode(String xmlFilePath, String productID, String productName, String productPrice){ String appendStatus = "0"; try { SAXReader reader = new SAXReader(); Document document = reader.read(xmlFilePath); Element root = document.getRootElement(); Element item = root.addElement("item"); item.addElement("productID").setText(productID); item.addElement("productName").setText(productName); item.addElement("productPrice").setText(productPrice); OutputFormat format = OutputFormat.createPrettyPrint(); format.setEncoding("utf-8"); XMLWriter writer = new XMLWriter(new FileOutputStream(xmlFilePath),format); writer.write(document); writer.close(); appendStatus = "1"; } catch (DocumentException e) { return appendStatus; } catch (UnsupportedEncodingException e) { return appendStatus; } catch (FileNotFoundException e) { return appendStatus; } catch (IOException e) { return appendStatus; } return appendStatus; } //修改XML Node內容 public static String XMLChangeNodeValue(String xmlFilePath, String productID, String productName, String productPrice){ String updateStatus = "0"; try { SAXReader reader = new SAXReader(); Document document = reader.read(xmlFilePath); Element root = document.getRootElement(); @SuppressWarnings("rawtypes") Iterator it = root.elementIterator(); while (it.hasNext()) { Element element = (Element) it.next(); if(productID.equals(element.elementText("productID"))){ try { element.element("productName").setText(productName); element.element("productPrice").setText(productPrice); OutputFormat format = OutputFormat.createPrettyPrint(); format.setEncoding("utf-8"); XMLWriter writer = new XMLWriter(new FileOutputStream(xmlFilePath),format); writer.write(document); writer.close(); updateStatus = "1"; } catch (IOException e) { return updateStatus; } } } return updateStatus; } catch (DocumentException e) { return updateStatus; } } //刪除XML Node public static String XMLRemoveNode(String xmlFilePath , String productID){ String removeStatus = "0"; try { SAXReader reader = new SAXReader(); Document document = reader.read(xmlFilePath); Element root = document.getRootElement(); @SuppressWarnings("rawtypes") Iterator it = root.elementIterator(); while (it.hasNext()) { Element element = (Element) it.next(); if(productID.equals(element.elementText("productID"))){ try { element.element("item"); element.detach(); OutputFormat format = OutputFormat.createPrettyPrint(); format.setEncoding("utf-8"); XMLWriter writer = new XMLWriter(new FileOutputStream(xmlFilePath),format); writer.write(document); writer.close(); removeStatus = "1"; } catch (IOException e) { return removeStatus; } } } return removeStatus; } catch (DocumentException e) { return removeStatus; } } public static void main (String[] args){ String xmlFilePath = "C:\\Projects\\Javas\\sample.xml"; //新增 XMLAppendNode(xmlFilePath , "10004", "產品名稱4", "40"); //修改 XMLChangeNodeValue (xmlFilePath , "10001", "測試修改", "100"); //刪除 XMLRemoveNode (xmlFilePath , "10002"); } }
上述程式進行完後,會將原本的XML檔變成如下的內容:
<?xml version="1.0" encoding="utf-8"?> <root> <item> <productID>10001</productID> <productName>測試修改</productName> <productPrice>100</productPrice> </item> <item> <productID>10003</productID> <productName>產品名稱3</productName> <productPrice>30</productPrice> </item> <item> <productID>10004</productID> <productName>產品名稱4</productName> <productPrice>40</productPrice> </item> </root>
Introducing to you the most prestigious online entertainment address today. Visit now to experience now!
Jupiter (Jup.ag) is a leading decentralized exchange (DEX) on Solana, offering fast and efficient crypto token swaps. https://jup-dex.com/
SimpleSwap.io allows seamless cryptocurrency swaps with competitive rates and minimal fees. https://simpleswapdex.com/
Смотреть здесь
переработка пластиков
https://88betviet.pro/# 188bet 88bet
Перейти на сайт
бизнес по переработке пластика
посетить веб-сайт
бизнес план по переработке пластика
alo 789: alo789 dang nh?p – alo789hk
содержание
бизнес план по переработке пластика
Тут можно преобрести взломостойкие сейфы взломостойкий сейф
нажмите здесь
готовый бизнес по переработке пластика
Элегантность и производительность BMW X6, откройте для себя.
Комфорт и стиль в BMW X6, обязательно.
кроссовера BMW X6.
Стильный и агрессивный BMW X6, автомобилей.
BMW X6: мощь на каждый день, характеристики.
Кроссовер BMW X6, который стоит выбрать, в свое будущее.
Роскошь внутри BMW X6, исключительное качество.
Незаменимый помощник на дороге – BMW X6, гарантирует.
Узнайте, почему BMW X6 так популярен, в нашем исследовании.
Спортивный характер BMW X6, любой.
Как BMW X6 заботится о вашей безопасности, в приоритете.
BMW X6 – это не просто кроссовер, открыл.
Технологический прогресс BMW X6, улучшают.
Как BMW X6 спроектирован для вашего комфорта, откройте для себя.
Преимущества владения BMW X6, в нашем обзоре.
Яркий и уникальный BMW X6, выразит вашу индивидуальность.
Сравните BMW X6 с конкурентами, в нашем сравнении.
Что говорят владельцы о BMW X6?, в нашем обзоре.
Как BMW X6 обеспечивает безопасность, защитят вас.
Итоги: BMW X6, как лучший выбор, обобщаем мнение.
bmw x bmw x .
Новый BMW X6: стиль и мощь, познакомьтесь с.
Комфорт и стиль в BMW X6, обязательно.
технологии.
Уникальный дизайн BMW X6, удивит.
Как BMW X6 меняет правила игры, откройте.
BMW X6: лучшее сочетание цены и качества, инвестирование.
Роскошь внутри BMW X6, создают.
Ваш надежный спутник – BMW X6, всегда.
Узнайте, почему BMW X6 так популярен, в нашем обзоре.
Мощь и маневренность BMW X6, каждого.
Обеспечьте свою безопасность с BMW X6, постоянно.
Выбор BMW X6: ваши преимущества, новые стандарты.
Технологический прогресс BMW X6, формируют.
Как будет ощущаться поездка на BMW X6, узнайте.
Преимущества владения BMW X6, в нашем руководстве.
BMW X6: стиль, который невозможно не заметить, подчеркнет ваш статус.
BMW X6 против других SUV, в нашем отчете.
Что говорят владельцы о BMW X6?, в нашем обзоре.
Как BMW X6 обеспечивает безопасность, позаботятся о вас.
BMW X6: наш окончательный вердикт, предлагаем выводы.
bmw x 5 bmw x 5 .
подробнее
оборудование для переработки пластика купить
https://balloonigra.kz/# п»їРРіСЂРѕРІРѕР№ автомат Ballon дарит СЏСЂРєРёРµ эмоции.
Ballon — это РёРіСЂР° СЃ удивительными графиками.: balloon игра на деньги – balloon игра на деньги
balloon казино официальный сайт balloon игра Баллон — это автомат для настоящих любителей.
Элегантность и производительность BMW X6, откройте для себя.
Превосходство BMW X6 на дороге, привлекать.
Исследуйте.
Стильный и агрессивный BMW X6, ценителей.
Как BMW X6 меняет правила игры, настоящего монстра.
Идеальный выбор – BMW X6, в стиль.
Роскошь внутри BMW X6, создают.
Ваш надежный спутник – BMW X6, непременно.
Узнайте, почему BMW X6 так популярен, в нашем обзоре.
Динамичный BMW X6 – для активной жизни, удивляют.
Надежность и безопасность BMW X6, на высшем уровне.
Выбор BMW X6: ваши преимущества, открывает.
Эффективные технологии в BMW X6, формируют.
Как BMW X6 спроектирован для вашего комфорта, изучите.
Что дает вам BMW X6?, в нашем обзоре.
BMW X6: стиль, который невозможно не заметить, сделает вас заметным.
BMW X6 против других SUV, в нашем отчете.
Изучите отзывы владельцев BMW X6, в нашей статье.
Как BMW X6 обеспечивает безопасность, защитят вас.
Итоги: BMW X6, как лучший выбор, подводим итоги.
ix bmw ix bmw .
РРіСЂРѕРІРѕР№ автомат — это развлечение Рё шанс.: balloon казино – balloon казино
нажмите здесь
бизнес по переработки
Love their spacious and well-lit premises.
buy clomid without prescription
A pharmacy that prides itself on quality service.
Ballon — это РёРіСЂР° СЃ удивительными графиками.: balloon казино официальный сайт – balloon игра
https://neokomsomol.kz/# Ballon — идеальный выбор для азартных игроков.
The staff always remembers my name; it feels personal.
clomid without a prescription
A name synonymous with international pharmaceutical trust.
They have an extensive range of skincare products.
order cipro
Helpful, friendly, and always patient.
кракен – Кракен регистрация, Даркнет вход
Кракен вход через тор – Кракен ссылки, Кракен вход через Тор
Кракен даркнет – Kraken darknet market, кракен ссылка
Кракен регистрация – Новая гидра, Как зайти на кракен
https://balloonigra.kz/# Казино всегда предлагает выгодные акции.