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>
Наткнулся на замечательный интернет-магазин, специализирующийся на раковинах и ваннах. Решил сделать ремонт в ванной комнате и искал качественную сантехнику по разумным ценам. В этом магазине нашёл всё, что нужно. Большой выбор раковин и ванн различных типов и дизайнов.
Особенно понравилось, что они предлагают стоимость раковины. Цены доступные, а качество продукции отличное. Консультанты очень помогли с выбором, были вежливы и профессиональны. Доставка была оперативной, и установка прошла без нареканий. Очень доволен покупкой и сервисом, рекомендую!
ремонт бытовой техники в самаре
The 9 Things Your Parents Taught You About Vibrators G Spot Vibrators G
Spot (Prelaunchprop.Com)
Если у вас сломался телефон, советую этот сервисный центр. Я сам там чинил свой смартфон и остался очень доволен. Отличное обслуживание и разумные цены. Подробнее можно узнать здесь: мастер по ремонту телефонов.
A Step-By-Step Instruction For Kids Bunk Bed best Bunk bed
Профессиональный сервисный центр по ремонту компьютерных блоков питания в Москве.
Мы предлагаем: ремонт блоков питания
Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом!
I simply had to thank you very much yet again. I am not sure the things that I would have sorted out in the absence of the tactics documented by you regarding such area. It was before a real challenging scenario in my view, however , discovering a new well-written technique you handled it forced me to cry over joy. I’m just grateful for this support and as well , pray you realize what an amazing job you’re doing teaching the others with the aid of your webpage. I’m certain you haven’t encountered all of us.
Друзья, если планируете обновить ванную комнату, советую обратить внимание на один интернет-магазин раковин и ванн. У них действительно большой ассортимент товаров от ведущих производителей. Можно найти всё: от простых моделей до эксклюзивных дизайнерских решений.
Я искал купить раковину для ванной, и они предложили несколько вариантов по хорошей цене. Качество продукции на высоком уровне, всё сертифицировано. Порадовало и то, что они предлагают профессиональные консультации и услуги по установке. Доставка была быстрой, всё пришло в целости и сохранности. Отличный магазин с хорошим сервисом!
Does your blog have a contact page? I’m having a tough time locating it but, I’d like to send you an e-mail. I’ve got some suggestions for your blog you might be interested in hearing. Either way, great website and I look forward to seeing it expand over time.
Hello i am so delighted I discovered your blog, I actually discovered you by error, while I was searching Yahoo for something else, Anyways I am here now and would just like to say thanks for a great blog posting and a all round absorbing blog (I also love the theme/design), I do not have time to read it all at the right now but I have bookmarked it and also added your RSS feeds, so when I have time I will be back to read more.
10 Things You Learned In Kindergarden They’ll Help You Understand Green Power Mobility Scooter powered mobility scooter – Faith –
straz bet starzbet giris starzbet guvenilir mi
Nine Things That Your Parent Teach You About Daftar Akun Togel
Resmi daftar akun togel resmi
https://starzbet.shop/# starzbet guncel giris
Nine Things That Your Parent Taught You About GSA SER Ranker gsa
ser ranker (153.126.169.73)
Недавно разбил экран своего телефона и обратился в этот сервисный центр. Ребята быстро и качественно починили устройство, теперь работает как новый. Очень рекомендую обратиться к ним за помощью. Вот ссылка на их сайт: ремонт телефонов центр.
ремонт бытовой техники самара
Профессиональный сервисный центр по ремонту компьютерных блоков питания в Москве.
Мы предлагаем: ремонт блока питания цена
Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом!
<a href=”https://remont-kondicionerov-wik.ru”>сервис по ремонту кондиционеров</a>
Недавно нашёл отличный интернет-магазин, где можно приобрести раковины и ванны для ванной комнаты. Они предлагают огромный выбор сантехники и аксессуаров, подходящих под любой интерьер и бюджет. Ассортимент действительно впечатляет: различные модели раковин (накладные, встроенные, подвесные) и ванн (акриловые, чугунные, гидромассажные).
Особенно если вы ищете: купить раковину недорого, что мне было очень нужно. Цены адекватные, качество товаров на высоте. Плюс, они предлагают профессиональные консультации, быструю доставку и услуги по установке. В общем, если кто-то ищет качественную сантехнику по хорошим ценам, рекомендую обратить внимание на этот магазин.
Профессиональный сервисный центр по ремонту компьютероной техники в Москве.
Мы предлагаем: диагностика системного блока компьютера
Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом!
casibom giris casibom casibom giris
It’s nearly impossible to find educated people about this subject, but you seem like you know what you’re talking about! Thanks
Профессиональный сервисный центр по ремонту компьютерных видеокарт по Москве.
Мы предлагаем: [url=remont-videokart-gar.ru]стоимость ремонта видеокарты компьютера[/url]
Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом!
Профессиональный сервисный центр по ремонту компьютерных видеокарт по Москве.
Мы предлагаем: [url=remont-videokart-gar.ru]починка видеокарты[/url]
Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом!
Профессиональный сервисный центр по ремонту компьютерных видеокарт по Москве.
Мы предлагаем: [url=remont-videokart-gar.ru]диагностика видеокарты цена[/url]
Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом!
Профессиональный сервисный центр по ремонту фототехники в Москве.
Мы предлагаем: накамерная вспышка ремонт
Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом!
Подробнее на сайте сервисного центра remont-vspyshek-realm.ru
Профессиональный сервисный центр по ремонту фото техники от зеркальных до цифровых фотоаппаратов.
Мы предлагаем: ремонт балласта проектора
Наши мастера оперативно устранят неисправности вашего устройства в сервисе или с выездом на дом!
Роман Василенко: в 2020 году выйдем на покупку 100 квартир в месяц
Роман Василенко Лайф из Гуд
В конце декабря в Москве по инициативе депутатов Государственной думы Сергея Крючка и Олега Нилова прошел круглый стол о перспективах жилищной кооперации для решения жилищной проблемы в России. Большой интерес вызвала модель жилищных кооперативов, обходящегося без государственной поддержки и подразумевающая покупку только готового, а не строящегося жилья.
Депутат Государственной думы Олег Нилов подчеркнул, что кооперативы существовали еще в советские времена, это позитивный опыт, который нуждается в государственной поддержке — ведь это способ беспроцентной покупки объектов недвижимости вскладчину. — Опыт Германии свидетельствует о том, что он очень эффективен, — заявил депутат Государственной думы Сергей Крючек, — Там очень большой объем жилья приобретается за счет кооперативного финансирования, а не ипотеки. Это альтернативный источник финансирования решения жилищного вопроса.
Присутствовавший на круглом столе практик жилищной кооперации — председатель правления жилищного кооператива “Бест Вей” Роман Василенко подчеркнул, что возглавляемый им кооператив как раз является примером решения квартирного вопроса без государственного финансирования и при этом с минимальной переплатой.
— Квартира, приобретенная кооперативом, обойдется существенно дешевле ипотечной. Переплата, связана с внесением вступительного и членских взносов, по наиболее типичным квартирам — стоимостью 3,5-4 млн рублей, составит примерно 10-15%.
По его словам, жилищная кооперация в России имеет давнюю историю. Дореволюционная Россия была первой в мире по числу кооперативов в мире. Жилищные кооперативы были распространены и в советское время. В пореформенный период был избран американской путь — акцент на ипотеку. Но он себя не оправдал — так как ипотеку получить довольно тяжело и число нуждающихся в качественном жилье сокращается медленно.
Кооперативное же финансирование получить, наоборот, легко. Нет таких требований, как хорошая кредитная история, не требуется подтвержденный доход.
Что касается возрастных ограничений, то пайщику должно исполниться 16 лет, верхних ограничений для вступления в кооператив нет. Залоговой частью выступает сама квартира: пока пайщик полностью не рассчитается с кооперативом, она находится в собственности кооператива, то есть в собственности всех пайщиков. Как только пайщик рассчитался с кооперативом, он получает право регистрации перехода права собственности на квартиру.
— В развитии жилищных кооперативов нужно правильно расставить акценты: выбрать форму, нуждающуюся в приоритетной поддержке. Есть жилищно-строительные кооперативы — это как раз случай Су-155. И есть жилищные кооперативы. Нет рисков, характерных, например, для ЖСК — рисков того, что ликвидный объект недвижимости, гарантирующий выплату пая пайщику, который примет решение выйти из кооператива, не будет создан — потому что дом по тем или иным причинам не будет достроен.
ЖК, сказал Василенко, покупают только готовые квартиры — на первичном или вторичном рынке, с зарегистрированным правом собственности, причем, квартиры, прошедшие тщательную юридическую проверку и независимую оценку рыночной стоимости. Это наиболее безопасное вложение. Достоинство ЖК, по словам Василенко, в том, что они не привлекают кредиты и не нуждаются в госфинансировании. Они способны решить проблему доступного жилья. У них одна-единственная задача — приобретение квартир для пайщиков, — заметил Василенко, — Они не имеют права привлекать заемные средства.
Роман Василенко – Парадигма Успеха!
Пайщики кооператива Бест вей
Психологи оценивают лидерство, как умение мотивировать, сплачивать, принимать быстрые решения. Но истинным лидерам присуще еще одно качество, о котором умалчивают специалисты. Лидер – это человек, способный сделать других счастливее. Неслучайно, что во время затянувшейся экономической нестабильности мы ищем образец для подражания – человека, который пройдя все перипетии жизненного пути, добился значительных высот, делится своими знаниями и накопленным опытом.
Для многих россиян таким человеком стал Роман Викторович Василенко –идейный вдохновитель, основатель холдинга Life Is Good и председатель правления ЖК Best Way.
Получив высшее экономическое образование в Ярославском Высшем Военном Финансовом Училище, он на рубеже XXI века принял решение совершенствоваться в профессии – продолжить обучение в области экономики и финансов на международных курсах. Полученные знания подкреплялись практическим опытом. За 15 лет работы в швейцарской корпорации Роман Викторович прошел путь от финансового консультанта до управляющего директора.
В настоящее время Роман Василенко – кандидат экономических наук, президент Международной бизнес-академии IBA, досконально владеет навыками сетевого маркетинга. Следует отметить, что данный принцип построения бизнеса не имеет ничего общего с финансовыми пирамидами. Сетевой маркетинг за 70-летнийопыт успешного развития, доказал свою жизнеспособность и экономическую целесообразность.
Роман Викторович имел великолепные возможности перебраться за границу и там применять свои знания и опыт. Но оставаясь патриотом своей страны, коренным петербуржцем он неоднократно делом доказывал свою любовь к Родине. Не сменил Россию на сладкую жизнь, когда компаньон по бизнесу после года упорной работы оставил Романа с семьей буквально ни с чем. Не погнался за длинным рублем, махнув на все рукой, когда в январе 2014 года его детище – молодая компания – переживало рейдерский захват.
Честь, совесть, независимая воля – это не просто слова для Романа Василенко. Как настоящий мужчина и офицер запаса он привык держать слово, отвечать за принятые обязательства. Люди доверили ему свои деньги, и он не мог их разочаровать. Воинская дисциплина и врожденные качества характера помогли Роману мобилизоваться, преодолеть сложные жизненные рубежи и уверенно двигаться к намеченной цели. Его твердые решения основаны на том, что лучше для всей корпорации; а не только для нескольких партнеров.
Но не одни только деловые качества являются основными признаками успеха Василенко. Людей больше привлекает его жизненное кредо. Те, кому посчастливилось работать с Романом Викторовичем, характеризуют его как филантропа и нравственного бизнесмена. Представители более близкого окружения рассказывают о его трепетном отношении к семье, друзья – о горячей любви к яхтам и дайвингу. И все в один голос заявляют о его безукоризненной честности. Сам Роман Викторович говорит, что этим он обязан своим родителям и в первую очередь матери, о которой он всегда говорит с особой теплотой и нежностью.
На протяжении многих лет Роман мечтал не просто о собственном бизнесе, а принципиально новом подходе к делу. Идея, казалось, витала в воздухе, для ее формирования не хватало одного толчка. Таким толчком стала главная тема саммита стран ШОС, участником которого был Василенко, «Как сохранить человеческий капитал и предотвратить утечку мозгов из России». Как известно, главная трудность молодых перспективных кадров – это отсутствие жилья и сложность его приобретения. По мнению Романа Викторовича необходимо дать возможность людям заработать на приобретение жилья, чтобы устранить главную причину миграции кадров. Ярославском Высшем Военном Финансовом Училище, он на рубеже XXI века принял решение совершенствоваться в профессии – продолжить обучение в области экономики и финансов на международных курсах. Полученные знания подкреплялись практическим опытом. За 15 лет работы в швейцарской корпорации Роман Викторович прошел путь от финансового консультанта до управляющего директора.