1. 1、前面写的这个不能继续插入数据,今天补上,当文件不存在的时候就创建,存在就直接往里面添加数据。
  1. 2、代码如下:
  1. <pre name="code" class="java">package com.mqp.doc2xml;
  2. import java.io.File;
  3. import java.io.IOException;
  4. import javax.xml.parsers.DocumentBuilder;
  5. import javax.xml.parsers.DocumentBuilderFactory;
  6. import javax.xml.parsers.ParserConfigurationException;
  7. import javax.xml.transform.Transformer;
  8. import javax.xml.transform.TransformerConfigurationException;
  9. import javax.xml.transform.TransformerException;
  10. import javax.xml.transform.TransformerFactory;
  11. import javax.xml.transform.dom.DOMSource;
  12. import javax.xml.transform.stream.StreamResult;
  13. import org.omg.CORBA.Environment;
  14. import org.w3c.dom.Document;
  15. import org.w3c.dom.Element;
  16. import org.w3c.dom.Text;
  17. import org.xml.sax.SAXException;
  18. /**
  19. *
  20. * 将配置中的数据保存在本地XML文件中
  21. *
  22. * @author Administrator
  23. *
  24. */
  25. // 使用Dom方式来保存数据
  26. public class Doc2Xml {
  27. public static boolean saveParam2Xml(String ip_value, String socket_value) {
  28. // 文档生成器工厂
  29. DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
  30. // 实例化文档生成器
  31. try {
  32. DocumentBuilder builder = factory.newDocumentBuilder();
  33. File f = new File("../Test/xml/text.xml");
  34. if (!f.exists()) {
  35. System.out.println("=======");
  36. f.createNewFile();
  37. // 生成一个文档
  38. Document document = builder.newDocument();
  39. // 创建根节点
  40. Element configs = document.createElement("configs");
  41. // 创建XML文件所需的各种对象并序列化(元素)
  42. Element config = document.createElement("config");// 创建元素节点
  43. Element ip = document.createElement("ip");
  44. Element socket = document.createElement("socket");
  45. Text ip_text = document.createTextNode(ip_value);// 创建text文本
  46. Text socket_text = document.createTextNode(socket_value);
  47. ip.appendChild(ip_text);
  48. socket.appendChild(socket_text);
  49. config.appendChild(ip);
  50. config.appendChild(socket);
  51. configs.appendChild(config);
  52. document.appendChild(configs);// 添加到文档中
  53. // 调用方法,将文档写入xml文件中
  54. return Doc2Xml.write2Xml(document, f);
  55. } else {
  56. // 解析文档
  57. Document document = builder.parse(f);
  58. Element configs = document.getDocumentElement();// 得到根节点,把后面创建的子节点加入这个跟节点中
  59. // 创建XML文件所需的各种对象并序列化(元素)
  60. Element config = document.createElement("config");// 创建元素节点
  61. Element ip = document.createElement("ip");
  62. Element socket = document.createElement("socket");
  63. Text ip_text = document.createTextNode(ip_value);// 创建text
  64. Text socket_text = document.createTextNode(socket_value);
  65. ip.appendChild(ip_text);
  66. socket.appendChild(socket_text);
  67. config.appendChild(ip);
  68. config.appendChild(socket);
  69. configs.appendChild(config);// 添加到根节点中
  70. // 调用方法,将文档写入xml文件中
  71. return Doc2Xml.write2Xml(document, f);
  72. }
  73. } catch (ParserConfigurationException e) {
  74. e.printStackTrace();
  75. return false;
  76. } catch (IOException e) {
  77. // TODO Auto-generated catch block
  78. e.printStackTrace();
  79. } catch (SAXException e) {
  80. // TODO Auto-generated catch block
  81. e.printStackTrace();
  82. }
  83. return false;
  84. }
  85. public static boolean write2Xml(Document document, File file) {
  86. // 创建转化工厂
  87. TransformerFactory factory = TransformerFactory.newInstance();
  88. // 创建转换实例
  89. try {
  90. Transformer transformer = factory.newTransformer();
  91. // 将建立好的DOM放入DOM源中
  92. DOMSource domSource = new DOMSource(document);
  93. // 创建输出流
  94. StreamResult result = new StreamResult(file);
  95. // 开始转换
  96. transformer.transform(domSource, result);
  97. return true;
  98. } catch (TransformerConfigurationException e) {
  99. e.printStackTrace();
  100. return false;
  101. } catch (TransformerException e) {
  102. e.printStackTrace();
  103. return false;
  104. }
  105. }
  106. public static void main(String[] args) {
  107. System.out.println(Doc2Xml.saveParam2Xml("10.1.23.2", "8888")
  108. + "----------");
  109. }
  110. }
  111. </pre><br><br>
 

http://blog.csdn.net/maqipei/article/details/12052115

android手机端保存xml数据的更多相关文章

  1. H.264视频在android手机端的解码与播放(转)

    随着无线网络和智能手机的发展,智能手机与人们日常生活联系越来越紧密,娱乐.商务应用.金融应用.交通出行各种功能的软件大批涌现,使得人们的生活丰富多彩.快捷便利,也让它成为人们生活中不可取代的一部分.其 ...

  2. 利用ddmlib 实现 PC端与android手机端adb forword socket通信(转)

    上篇文章讲了PC与android手机连接的办法 ,通过java调用系统命令执行adb命令操作,实际上是一个比较笨的办法. 网上查阅资料,发现google 提供了ddmlib库 (adt-bundle\ ...

  3. Android手机端抓包方法

    抓包准备 1. Android手机需要先获得root权限.一种是否获得root权限的检验方法:安装并打开终端模拟器(可通过安卓市场等渠道获得).在终端模拟器界面输入su并回车,若报错则说明未root, ...

  4. Android使用webService(发送xml数据的方式,不使用jar包)

    Android使用webService可以用ksoap2.jar包来使用.但是我觉得代码不好理解,而且记不住. 所以我查询了好多资料,以及自己的理解.可以用代码发送http请求(发送xml数据)来访问 ...

  5. Android 手机端自动化测试框架

    前言: 大概有4个月没有更新了,因项目和工作原因,忙的手忙脚乱,趁十一假期好好休息一下,年龄大了身体还是扛不住啊,哈哈.这次更新Android端自动化测试框架,也想开源到github,这样有人使用才能 ...

  6. 基于H7的中移动物联例子以及简易操作说明,方便电脑端和手机端远程查看数据

    说明: 1.操作前,务必优先看此贴里面的基础例子,先将WIFI连接到路由器上,这样才可以访问外网: https://www.cnblogs.com/armfly/p/11307803.html 2.有 ...

  7. Fiddler 抓包工具怎么使用?怎么在Android手机端的APP抓包

    https://blog.csdn.net/loner_fang/article/details/83309266 参考这个人的微博上有fiddler主要功能使用的步骤. 序章 Fiddler是一个蛮 ...

  8. 存储过程 保存 xml 数据

    示例: .net DataSet ds=.... string xml = ds.GetXml();xml = xml.Replace("'","''"); S ...

  9. PC端使用opencv获取webcam,通过socket把Mat图像传输到android手机端

    demo效果图: PC端 android端 大体流程 android端是服务器端,绑定IP和端口,监听来自PC端的连接, pc端通过socket与服务器andorid端传输图片. 主要代码 andro ...

随机推荐

  1. 【HDOJ】1341 Simple Computers

    注意PC要与31. #include <cstdio> #include <cstring> #include <cstdlib> #define MAXN 40 ...

  2. 批量将文件转换为UTF-8无BOM格式

    最近有一个项目需要迁移,要把文件全部转换成utf8格式的,本来想用python,后来听说PowerShell很是强大,就试着用了一下,果然好用啊! $list = Get-ChildItem .\ - ...

  3. SQL VS NoSQL

    (关系型与非关系型)数据库的区别: 关系型和非关系型数据库的主要差异是数据存储的方式 1.1 数据表 VS 数据集 关系型数据天然就是表格式的,因此存储在数据表的行和列中.数据表可以彼此关联协作存储, ...

  4. 6.关于QT中的内存管理,动态的制作,动态库的调用,静态库的制作

     一  QT的内存管理 1  QT中的内存管理是QObject来管理的 2  QT中的内存管理没有cocos2dx中的引用计数 3  组件能够指定父对象 QTimer *timer = QTime ...

  5. hdu 1724 Ellipse simpson积分

    /* hdu 1724 Ellipse simpson积分 求椭圆的部分面积 simpson积分法 http://zh.wikipedia.org/zh-tw/%E8%BE%9B%E6%99%AE%E ...

  6. [置顶] Android的IPC访问控制设计与实现

    3.3.1 IPC钩子函数设计与实现 IPC Binder是Android最重要的进程间通信机制,因此,必须在此实施强制访问控制. 1. 修改secuirty.h 打开终端shell,输入指令“cd ...

  7. Android经常使用的五种弹出对话框

    一个Android开发中经常使用对话框的小样例,共同拥有五种对话框:普通弹出对话框,单选对话框,多选对话框,输入对话框及进度条样式对话框: <LinearLayout xmlns:android ...

  8. qt 实现钟表图标

    #include "clock.h" CLOCK::CLOCK(QWidget *parent) : QWidget(parent) { QTimer *timer = new Q ...

  9. LDAP索引及缓存优化

    一.设置索引 索引将查找信息和 Directory Server 条目关联起来. Directory Server支持以下几种索引: 1出现索引 (pres) - 列出了具有特定属性的条目,与属性的值 ...

  10. (转)asp.net实现忘记密码找回的代码

    1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.or ...