「javaxml文件修改」js修改xml文件
今天给各位分享javaxml文件修改的知识,其中也会对js修改xml文件进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
java修改XMl文件,请高手指点
楼主这个思路是没有什么问题的,存入map中可以方便整个项目使用,特别是针对那些项目中经常要读取的xml,可以使用xpath
public static void modifyXMLFile(String name,String value) {
String oldStr = "E:/Work/Proj/gfweb/src/configuration.xml";
String newStr = "E:/Work/Proj/gfweb/src/configuration.xml";
Document document = null;
try {
SAXReader saxReader = new SAXReader(); // 用来读取xml文档
saxReader.setEncoding("GBK");
document = saxReader.read(new File(oldStr)); // 读取xml文档
List list = document.selectNodes("/system/category/item");// 用xpath查找节点book的属性
Iterator iter = list.iterator();
while (iter.hasNext()) {
Element element = (Element) iter.next();
//Attribute attribute = (Attribute) iter.next();
String itemname = element.attributeValue("name");
if(name.equals(itemname)){
element.setAttributeValue("value",value);
}
}
} catch (Exception e) {
e.printStackTrace();
}
try {
OutputFormat outFmt = OutputFormat.createPrettyPrint();
outFmt.setEncoding("GBK");
outFmt.setIndent(true);
XMLWriter writer = new XMLWriter(new FileWriter(new File(newStr)),outFmt);
writer.write(document);
writer.close();
} catch (Exception ex) {
ex.printStackTrace();
}
}
关于java修改xml的问题
public
static
void
writeDocumentToFile(Document
document,String
fileName){
XMLOutputter
outputter
=
new
XMLOutputter();
PrintWriter
out
=
null;
try{
out
=
new
PrintWriter(new
BufferedWriter(new
FileWriter(new
File(fileName))));
outputter.output(document,
out);
}
catch(
Exception
ex){
ex.printStackTrace();
}
finally{
try{
if(out
!=
null){
out.close();
}
}
catch(Exception
ex){
}
}
}
我写的方法
强调一点
XML不存在修改的意思
永远都是把所有的节点读进来
然后再将节点一起写回去
即使该
XML文件
不存在
而你在程序里写了
DOCUMENT对象
的话
也是可以写的
就跟普通的I/O流是一样的
不同的是
数据可以从其他XML里获得
也可以从程序里获得
java修改xml文件内容
?xml version="1.0" encoding="UTF-8"?
users
Messages
sendNamesendUsers/sendName
receiveNamesnake/receiveName
date2007-12-04 12:20:00/date
status0/status
messagethis is Content/message
/Messages
/users
java:
package com.lianxi.DAO;
import java.io.File;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
public class UpdateXml {
public static boolean doc2XmlFile(Document document,String filename)
{
boolean flag = true;
try
{
/** 将document中的内容写入文件中 */
TransformerFactory tFactory = TransformerFactory.newInstance();
Transformer transformer = tFactory.newTransformer();
/** 编码 */
//transformer.setOutputProperty(OutputKeys.ENCODING, "GB2312");
DOMSource source = new DOMSource(document);
StreamResult result = new StreamResult(new File(filename));
transformer.transform(source, result);
}catch(Exception ex)
{
flag = false;
ex.printStackTrace();
}
return flag;
}
public static Document load(String filename)
{
Document document = null;
try
{
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder=factory.newDocumentBuilder();
document=builder.parse(new File(filename));
document.normalize();
}
catch (Exception ex){
ex.printStackTrace();
}
return document;
}
/**
* 演示修改文件的具体某个节点的值
*/
public static void xmlUpdateDemo()
{
Document document = load("c://Message.xml");
Node root=document.getDocumentElement();
/** 如果root有子元素 */
if(root.hasChildNodes())
{
/** ftpnodes */
NodeList ftpnodes = root.getChildNodes();
/** 循环取得ftp所有节点 */
for (int i=0;iftpnodes.getLength();i++)
{
NodeList ftplist = ftpnodes.item(i).getChildNodes();
for (int k=0;kftplist.getLength();k++)
{
Node subnode = ftplist.item(k);
/** 删除ftp-chn节点 */
// if (subnode.getNodeType()==Node.ELEMENT_NODEsubnode.getNodeName()=="ftp-chn")
// {
// ftpnodes.item(i).removeChild(subnode);
// }
/** 修改ftp-host的值为 192.168.0.1 */
if (subnode.getNodeType()==Node.ELEMENT_NODEsubnode.getNodeName()=="status")
{
subnode.getFirstChild().setNodeValue("1");
}
}
}
}
doc2XmlFile(document,"c://Message.xml");
}
public static void main(String args[])throws Exception
{
UpdateXml.xmlUpdateDemo();
}
}
javaxml文件修改的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于js修改xml文件、javaxml文件修改的信息别忘了在本站进行查找喔。