如何将符合xml规范的String转化为XML文档中的element对象:
/**
* 字符串转化为XML对象并加入到XML中的某一个节点下
* @throws DocumentException
*/
public void stringToXml() throws DocumentException{
SAXReader saxReader = new SAXReader();
Document doc;
try {
doc = saxReader.read(new ByteArrayInputStream(xmlStr.getBytes("UTF-8")));
if (doc!=null){
Element element=doc.getRootElement();
SAXReader saxReader1 = new SAXReader();
Document document1 = saxReader1.read(fileName);
Element element1 = (Element)document1.selectSingleNode("//template");
element1.add(element);
writeXML(document1);
}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
/**
* 写XML
* @param doc
*/
private void writeXML(Document doc){
OutputFormat of = OutputFormat.createPrettyPrint();
of.setEncoding("utf-8");
FileOutputStream fos = null;
XMLWriter xmlout = null;
String lockfilename = fileName + ".lock";
MessageLock lock = new MessageLock(lockfilename);
try{
if(lock.lock()) {
fos = new FileOutputStream(this.fileName);
xmlout = new XMLWriter(new OutputStreamWriter(fos, "utf-8"), of);
xmlout.write(doc);
xmlout.flush();
}
}catch (Exception ex){
log.error("-->writeXml",ex);
}finally{
lock.unlock();
if (fos != null){
try{
fos.close();
}catch (IOException ex1){
log.error("-->writeXml",ex1);
}
}
if (xmlout != null){
try{
xmlout.close();
}catch (IOException ex2){
log.error("-->writeXml",ex2);
}
}
}
}
分享到:
相关推荐
生成XML文件ABAP程序 REPORT zams_xml_dom_create . TYPE-POOLS: ixml. CLASS cl_ixml DEFINITION LOAD. TYPES: BEGIN OF xml_line, data(256) TYPE x, END OF xml_line. DATA: l_ixml TYPE REF TO if_ixml, ...
public Element ReaderXml(String fileName,String firstChild){ Element element=null; try{ File xmlFile = new File(fileName); SAXBuilder sAXBuilder=new SAXBuilder(false); Document document=...
2.xml文件是由元素和元素的内容以及属性组成的,一个xml文件中只能有一个根元素,标签和标签的内容加在一起叫作一个元素。xml是大小写 敏感的,只能以字母或下划线开头。 字符转义 < 代表 ", > 代表 ">" , &...
* 解析某个xml文件,并在内存中创建DOM树 * @param xmlFile 要解析的XML文件 * @return 解析某个配置文件后的Document * @throws Exception xml文件不存在 */ public static Document parse( String xml...
TinyXML能够追踪所有结点和属性在文本文件中的行列原始位置。TiXmlBase::Row() 和 TiXmlBase::Column() 方法返回结点在源文件中的原始位置。正确的制表符号可以经由TiXmlDocument::SetTabSize() 来配置。 使用与...
元素可以让我们使用没有在Schema中定义的元素去扩展XML文档。例如,在Schema family.xsd中使用了 <xs:element name="person"> <xs:element name="firstname" type="xs:string"/> <xs:element name="lastname" type...
说明:一个xml文件中包含多个html段,进行分割. :param file: :return: """ final_list = [] output = "" str_list = file_str.split("\n") for i in range(len(str_list)): if str_list[i] != "\n": ...
publicvoid readStringXml(String xml) { Document doc =null; try { // 读取并解析XML文档 // SAXReader就是一个管道,用一个流的方式,把xml文件读出来 // // SAXReader reader = new SAXReader(); //User...
概念:就是限制一个XML文件中标签和属性等的使用,只能按照某种规则书写 便于其他程序员学习。 2. 作用: 1. 代码校验 2. 代码提示 3. 利于达成共识形成规范 3. 约束分类: 1. DTD...
分别从xml字符串和xml文件转换为xml对象,然后解析xml内容,查询指定信息字段。 from xml.dom.minidom import parse, parseString from xml.etree import ElementTree import xml.dom.minidom Get XML String info...
// 把要解析的XML文档转化为输入流,以便DOM解析器解析它 InputStream is = new FileInputStream("test.xml"); // 解析XML文档的输入流,得到一个Document Document doc = dombuilder.parse(is); // 得到XML...
<creator id="new" class="uk.ltd.getahead.dwr.create.NewCreator"/>DWR已经将这配置到了内置的dwr.xml文件中,并不需要进行额外的配置. Creator通过调用类的默认的构造方法创建实例.应用new creator有以下几个优点:...
* 将Document输出到指定的文件中。 * * @param fileName * 文件名。 * @param node * 要保存的对象。 * @param encoding * 保存的编码。 * @throws FileNotFoundException * 指定的文件名不...
使用dom4j读写XML文档 1.获取文档的根节点. Element rootElm = document.getRootElement(); 2.取得某节点的单个子节点. Element memberElm=root.element("member");// "member"是节点名 3.取得节点的文字 String ...
用java 解析xml 两个重要的方法说明 /** * 获得某节点下的某个子节点(指定子节点名称,和某个属性的值) * 即获取parentElement下名字叫childName,并且属性attributeName的值为attributeValue的子结点 ...
项目文档、数据库建表语句均已放置在项目中。 关键代码如下: public String getXml(Connection conn, int rm_id, String path) { //声明xml字符串 String fileString = ""; //创建DAO对象 ...
为保证xml文件格式正确,将自动在Xml中添加声明 ***************************************************/ bool SaveFile(string sPath); /*************************************************** Type: public ...
String strokeOrderID=stroke.getAttributes().getNamedItem("strokeOrderID").getNodeValue(); System.out.println(strokeOrderID); //注意,节点的属性也是它的子节点。它的节点类型也是Node.ELEMENT_NODE ...
Node): 文件(XML :: Document) 元素(XML :: Element) 文字(XML :: Text) 评论(XML :: Comment) PI(XML :: PI) CDATA(XML :: CDATA) 您可以通过在字符串上下文中使用任何XML :: Node对象,轻松地将对象...
var xmlString = '<?xml version="1.0" ?>' ' ' <item>Foo</item>' ' color="green">Bar</item>' '</items>' var parser = tinyxml(xmlString) var nodes = parser....