判断本地系统目录下是否存在XML文件,如果不存在就创建一个XMl文件,若存在就在里面执行添加数据
这是我为项目中写的一个测试的例子,
假如,您需要这样一个xml文件,
<?xml version="1.0" encoding="utf-8"?>
<A>
<a>
<id></id>
<name>lee</name>
<time>-- ::</time>
</a>
</A>
如果,本地目录下没有这样的xml文件,就生成一个。。。
如果有,就执行往里面加入数据,如:
<?xml version="1.0" encoding="utf-8"?>
<A>
<a>
<id></id>
<name>lee</name>
<time>-- ::</time>
</a>
<a>
<id></id>
<name>wan</name>
<time>-- ::</time>
</a>
<a>
<id></id>
<name>wang</name>
<time>-- ::</time>
</a>
... ...
<a>
<id>00n</id>
<name>xie</name>
<time>-- :5:</time>
</a>
</A>
其实,我想要的就是这样的效果,以下就是具体的代码实现过程(说明:下面代码实现的结果不是上面的xml,那是我随便写的,大概形式是这样的)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Xml;
using System.IO; namespace ThreadExample
{
class Program
{
static void Main(string[] args)
{
string path = "D:\\Click_statistics.xml";
XmlDocument doc = new XmlDocument(); if (!File.Exists(path))
{
//创建头文件声明
XmlDeclaration xmldecl;
xmldecl = doc.CreateXmlDeclaration("1.0", "utf-8", null); //Add the new node to the document.
XmlElement root = doc.DocumentElement;
doc.InsertBefore(xmldecl, root); XmlElement Node = doc.CreateElement("zhjs");//创建一个zhjs节点
doc.AppendChild(Node); XmlElement Node1 = doc.CreateElement("total");//创建节点zhjs子节点total
doc.DocumentElement.AppendChild(Node1); XmlElement Node2 = doc.CreateElement("f_name");//创建节点total子节点f_name
Node2.InnerText = "信息查询";
Node1.AppendChild(Node2); XmlElement Node3 = doc.CreateElement("c_name");//创建节点total子节点c_name
Node3.InnerText = "";
Node1.AppendChild(Node3); XmlElement Node4 = doc.CreateElement("time");//创建节点total子节点time
Node4.InnerText = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
Node1.AppendChild(Node4); doc.Save(path);
}
else
{
doc.Load(path);
XmlNode xmlnode = doc.SelectSingleNode("zhjs"); XmlElement Node1 = doc.CreateElement("total");//创建节点zhjs子节点total
doc.DocumentElement.AppendChild(Node1); XmlElement Node2 = doc.CreateElement("f_name");//创建节点total子节点f_name
Node2.InnerText = "公交查询";
Node1.AppendChild(Node2); XmlElement Node3 = doc.CreateElement("c_name");//创建节点total子节点c_name
Node3.InnerText = "";
Node1.AppendChild(Node3); XmlElement Node4 = doc.CreateElement("time");//创建节点total子节点time
Node4.InnerText = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
Node1.AppendChild(Node4); doc.Save(path);
}
}
}
}
判断本地系统目录下是否存在XML文件,如果不存在就创建一个XMl文件,若存在就在里面执行添加数据的更多相关文章
- logback 指定每隔一段时间创建一个日志文件
我使用的logback版本是1.2.3 目前logback支持根据时间来配置产生日志文件,但是只支持每周,每天,每个小时,每分钟等创建一个文件,配置如下: <appender name=&quo ...
- 使用SQL语句创建数据库1——创建一个数据库文件和一个日志文件的数据库
目的:创建一个数据库文件和一个日志文件的数据库 在matser数据库下新建查询,输入的命令如下: USE master——指向当前使用的数据库.创建数据库实际上是向master数据库中增加一条数据库信 ...
- 如何在Qt Creator 创建一个.pri文件
如何在Qt Creator 创建一个.pri文件 2013年10月09日 ⁄ 综合 ⁄ 共 254字 ⁄ 字号 小 中 大 ⁄ 评论关闭 这个问题很少人写,因为比较简单,但是让却让我花了好大功夫才 ...
- 编写Java程序,使用 dom4j 创建一个 XML 文档,文档名为“city.xml”。注意该文档的格式和数据
查看本章节 查看作业目录 需求说明: 使用 dom4j 创建一个 XML 文档,文档名为"city.xml".该文档的格式和数据如图所示 实现思路: 创建Java项目,添加dom4 ...
- 编写Java程序,创建一个 XML 文档,文档名为“hero.xml”,用于保存“王者荣耀”的英雄信息。
查看本章节 查看作业目录 需求说明: 创建一个 XML 文档,文档名为"hero.xml",用于保存"王者荣耀"的英雄信息.英雄信息包括编号(id).姓名(na ...
- 批处理判断是否存在文件,存在则运行另外一个bat文件
现在需求如下: 使用bat文件判断是否存在ktr文件,存在则运行pan.bat,执行kettle脚本. 代码如下: @echo off @title 批处理判断文件夹是否存在 cd /d F: rem ...
- MVC文件上传09-使用客户端jQuery-File-Upload插件和服务端Backload组件让每个用户有专属文件夹,并在其中创建分类子文件夹
为用户创建专属上传文件夹后,如果想在其中再创建分类子文件夹,该怎么做?可以在提交文件的视图中再添加一个隐藏域,并设置 name="uploadContext". 相关兄弟篇: MV ...
- 写入数据到Plist文件中时,第一次要创建一个空的数组,否则写入文件失败
#pragma mark - 保存数据到本地Plist文件中 - (void)saveValidateCountWithDate:(NSString *)date count:(NSString *) ...
- python 读hdf4文件,再转写成一个tif文件
1.安装pyhdf包 (1)通过此链接查找并下载pyhdf包:https://www.lfd.uci.edu/~gohlke/pythonlibs/#pygame(根据自己的系统及python版本选择 ...
随机推荐
- database disk image is malformed解决方法
作者:朱金灿 来源:http://blog.csdn.net/clever101 在Hudson上终止一次Job的运行之后,Hudson在服务器上更新源码出现下图的错误: 查了下英文意思,大意是svn ...
- Attribute-based identification schemes for objects in internet of things
Methods and arrangements for object identification. An identification request is received from diffe ...
- Codeforces 444A DZY Loves Physics(图论)
题目链接:Codeforces 444A DZY Loves Physics 题目大意:给出一张图,图中的每一个节点,每条边都有一个权值.如今有从中挑出一张子图,要求子图联通,而且被选中的随意两点.假 ...
- 开源|LightGBM:三天内收获GitHub 1000+ 星
原创 2017-01-05 LightGBM 微软研究院AI头条 [导读]不久前微软DMTK(分布式机器学习工具包)团队在GitHub上开源了性能超越其他boosting工具的LightGBM,在三天 ...
- POJ 2954-Triangle(计算几何+皮克定理)
职务地址:POJ 2954 意甲冠军:三个顶点的三角形,给出,内部需求格点数. 思考:就像POJ 1265. #include <stdio.h> #include <math.h& ...
- WPF制作的党旗
原文:WPF制作的党旗 --------------------------------------------------------------------------------引用或转载时请保 ...
- ude—基于udp的全双工可靠传输协议
ude是一款基于udp的可靠传输协议,专门用于在数据传输方面对实时性要求较高的应用领域. tcp协议虽然能保证数据的可靠传输,但它有以下几个缺点:1.tcp的数据确认机制会导致发送方重复发送一些 ...
- 基于高德地图的描点操作,监听地图缩放,展示合理数量的marker
原文:基于高德地图的描点操作,监听地图缩放,展示合理数量的marker 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/lx583274568/art ...
- Socket编程实践(6) --TCPNotes服务器
僵尸进程过程 1)通过忽略SIGCHLD信号,避免僵尸进程 在server端代码中加入 signal(SIGCHLD, SIG_IGN); 2)通过wait/waitpid方法.解决僵尸进程 sign ...
- 嵌入式开发(*(volatile unsigned long *)) 认识
一个.说明 (*(volatile unsigned long *)) 这个语句对于不同的计算机体系结构,设备可能是port映射,也可能是内存映射的. 假设系统结构支持独立的IO地址空间.而且是por ...