java dom4j 修改了xml的内容,再打开xml文件内容没变过,能正常读取...
参考: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;import java.io.File;public class ReadXMLFile {public static void main(String argv[]) {try {File fXmlFile = new File("/Users/mkyong/staff.xml");DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();Document doc = dBuilder.parse(fXmlFile);//optional, but recommended//read this - http://stackoverflow.com/questions/13786607/normalization-in-dom-parsing-with-java-how-does-it-workdoc.getDocumentElement().normalize();System.out.println("Root element :" + doc.getDocumentElement().getNodeName());NodeList nList = doc.getElementsByTagName("staff");System.out.println("----------------------------");for (int temp = 0; temp < nList.getLength(); temp++) {Node nNode = nList.item(temp);System.out.println("\nCurrent Element :" + nNode.getNodeName());if (nNode.getNodeType() == Node.ELEMENT_NODE) {Element eElement = (Element) nNode;System.out.println("Staff id : " + eElement.getAttribute("id"));System.out.println("First Name : " + eElement.getElementsByTagName("firstname").item(0).getTextContent());System.out.println("Last Name : " + eElement.getElementsByTagName("lastname").item(0).getTextContent());System.out.println("Nick Name : " + eElement.getElementsByTagName("nickname").item(0).getTextContent());System.out.println("Salary : " + eElement.getElementsByTagName("salary").item(0).getTextContent());}}} catch (Exception e) {e.printStackTrace();}}}
java读取带格式word内容
// 表格类型ListtableList = doc.getTables();for (int i = 0; i System.out.println(i);XWPFTable table = tableList.get(i);System.out.println(table.getText());}获取表格中内容可以用这个,但是你说的格式是什么意思,每个字的字体之类的吗?
如何用java程序从xml文件中根据文本内容获取指定标签并删除标签和内...
展开全部 XML文件的表现:以“.xml”为文件扩展名的文件; 存储结构:树形结构; 节点名称区分大小写。
1、 id为属性, 1 id为节点2、xml文件开头要加上版本信息和编码方式 比如: ? 为什么要使用XML? 思考1:不同应用程序之间的通信? 思考2:不同平台间的通信? 思考3:不同平台间的数据共享? 答案就是我们要学习的XML文件。
我们可以使用相同的xml把不同的文件联系起来 回到顶部 二、应用 DOM 方式解析 XML ? 在Java程序中如何获取XML文件的内容 解析的目的:获取节点名、节点值、属性名、属性值; 四种解析方式:DOM、SAX、DOM4J、JDOM DOM、SAX :java 官方方式,不需要下载jar包DOM4J、JDOM :第三方,需要网上下载jar包 示例:解析XML文件,目标是解析XML文件后,Java程序能够得到xml文件的所有数据 思考:如何在Java程序中保留xml数据的结构? 如何保留节点之间的层级关系? 注意常用的节点类型: 下面介绍DOM方式解析XML: 功能说明: ...
在Java中,从数据库读取并写成XML文件,这个如何用代码实现。
。
。
...
JAVA与XML文件,可以说是软件开发的“黄金搭档”,而如何使用JAVA完成对XML文件的读取,是我们首先要解决的问题。
一、XML文件 这个示例文件包括了用来打开ORACLE数据库的各种参数 oracle.jdbc.driver.OracleDriver jdbc:oracle:thin:@11.88.225.80:1521:VOUCHERDB SYS AS SYSDBA voucherdb 二、编写类名为ReadXml的类,用于解析XML文件 我们要在应用程序中打开数据库,就必须完成对该文件中drivername、sConnStr、username、password的读取,通过查找有关资料,笔者编制了以下程序,用于读取文件名为filename的XML文件。
package voucher.basic; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.InputStream; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.parsers.ParserConfigurationException; import org.w3c.dom.Document; import org.w3c.dom.Element; import org.w3c.dom.Node; import org.w3c.dom.NodeList; import org.xml.sax.SAXException; public class ReadXml { private String drivername; private String sConnStr; private String username; private String password; public String getDrivername() { return drivername; } public String getSConnStr() { return sConnStr; } public String getUsername() { return username; } public String getPassword() { return password; } public void setDrivername(String drivername) { this.drivername = drivername; } public void setSConnStr(String connStr) { sConnStr = connStr; } public void setUsername(String username) { this.username = username; } public void setPassword(String password) { this.password = password; } public ReadXml(String fileName){ DocumentBuilderFactory domfac=DocumentBuilderFactory.newInstance(); try { DocumentBuilder dombuilder=domfac.newDocumentBuilder(); InputStream is=new FileInputStream(fileName); Document doc=dombuilder.parse(is); Element root=doc.getDocumentElement(); NodeList dbinfo=root.getChildNodes(); if(dbinfo!=null){ for(int i=0;i Node db=dbinfo.item(i); for(Node node=db.getFirstChild();node!=null;node=node.getNextSibling()){ if(node.getNodeType()==Node.ELEMENT_NODE){ if(node.getNodeName().equals("drivername")){ setDrivername(node.getFirstChild().getNodeValue()); } if(node.getNodeName().equals("sConnStr")){ setSConnStr(node.getFirstChild().getNodeValue()); } if(node.getNodeName().equals("username")){ setUsername(node.getFirstChild().getNodeValue()); } if(node.getNodeName().equals("password")){ setPassword(node.getFirstChild().getNodeValue()); } } } } } } catch (ParserConfigurationException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (FileNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (SAXException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } 这个以ReadXml命名的类,使用了参数为文件名的构造方法,用户只要将配置文件我名称传递给该方法,就可以完成对XML文件的解析,进而完成对相应参数数的读取。
三、如何获取XML文件全路径并读取配置参数 获取XML文件全路径的方法有两个,一是在servlet中获取,二是在单独的JAVA类中获取。
1.在servlet中获取XML文件的全路径并读取配置参数 程序片段String dirPath = getServletContext().getRealPath( "/WEB-INF"); String fileName = dirPath + "/conn.xml"; ReadXml xm = new ReadXml(fileName); String DriverName = xm.getDrivername(); String connStr = xm.getSConnStr(); String user = xm.getUsername(); String pas = xm.getPassword(); 将这段程序添加到servlet中dopost()之后即可完成参数的读取 2.在单独的JAVA类中获取全路径并读取配置参数 程序片段 String dirpath = System.getProperty("user.dir"); String xmlFile = dirpath + "/WebRoot/WEB-INF/conn.xml"; ReadXml rdxml = new ReadXml(xmlFile); String driverName = rdxml.getDrivername(); String sConnStr = rdxml.getSConnStr(); String userName = rdxml.getUsername(); String passWord = rdxml.getPassword(); 注:配置文件conn.xml保存在webroot/WEB-INF目录中。
转载请注明出处51数据库 » java word转xml并读取内容
亖呉?盀