WriteXml类(C#)
来源:互联网 发布:解说录制视频软件 编辑:程序博客网 时间:2024/06/01 16:54
using System;
using System.Web;
using System.Data;
using System.Text;
using System.Xml;
using System.IO;
namespace Baolee.GeneralMethod
{
/// <summary>
/// WriteXml 的摘要说明。
/// </summary>
public class WriteXml
{
/// <summary>
/// 构造函数
/// </summary>
public WriteXml()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
/// <summary>
/// 读取XML和XSD, 两文件同名如果两文件不同名,则参看LoadSignXML
/// </summary>
/// <param name="descDirectory"></param>
/// <param name="fileName">文件名,不带扩展名</param>
/// <returns></returns>
public DataSet Load(string descDirectory, string fileName)
{
DataSet set = new DataSet();
set.ReadXmlSchema(descDirectory + @"/" + fileName + ".xsd");
set.ReadXml(descDirectory + @"/" + fileName + ".xml");
return set;
}
/// <summary>
/// 读取单一XML文件
/// </summary>
/// <param name="descDirectory"></param>
/// <param name="fileName"></param>
/// <returns></returns>
public DataSet LoadSignXML(string descDirectory, string fileName)
{
XmlDataDocument document = new XmlDataDocument();
document.DataSet.ReadXml(descDirectory + @"/" + fileName + ".xml");
return document.DataSet;
}
/// <summary>
/// 读取XML和XSD, 两文件不同名
/// </summary>
/// <param name="descDirectory"></param>
/// <param name="xmlName"></param>
/// <param name="xsdName"></param>
/// <returns></returns>
public DataSet LoadSignXML(string descDirectory, string xmlName, string xsdName)
{
XmlDataDocument document = new XmlDataDocument();
document.DataSet.ReadXmlSchema(descDirectory + @"/" + xsdName + ".xsd");
document.DataSet.ReadXml(descDirectory + @"/" + xmlName + ".xml");
return document.DataSet;
}
/// <summary>
/// 生成XML文件,UTF-8格式,带XSD
/// </summary>
/// <param name="descDirectory"></param>
/// <param name="fileName"></param>
/// <param name="ds"></param>
public void Write(string descDirectory, string fileName, DataSet ds)
{
if (!Directory.Exists(descDirectory))
{
Directory.CreateDirectory(descDirectory);
}
ds.WriteXml(descDirectory + @"/" + fileName + ".xml");
ds.WriteXmlSchema(descDirectory + @"/" + fileName + ".xsd");
}
/// <summary>
/// 生成XML文件,GB2312格式,带XSD,XML文件无版本号,StreamWrite
/// </summary>
/// <param name="descDirectory"></param>
/// <param name="fileName"></param>
/// <param name="ds"></param>
public void WriteGB2312(string descDirectory, string fileName, DataSet ds)
{
StreamWriter writer = new StreamWriter(descDirectory + @"/" + fileName + ".xml", false, Encoding.GetEncoding("GB2312"));
ds.WriteXml(writer);
ds.WriteXmlSchema(descDirectory + @"/" + fileName + ".xsd");
}
/// <summary>
/// 生成XML文件,GB2312格式,无XSD,XmlDocument
/// </summary>
/// <param name="descDirectory"></param>
/// <param name="fileName"></param>
/// <param name="ds"></param>
public void WriteWithDoc(string descDirectory, string fileName, DataSet ds)
{
XmlDocument document = new XmlDocument();
document.LoadXml(ds.GetXml());
ds.Clear();
ds.Dispose();
XmlDeclaration newChild = document.CreateXmlDeclaration("1.0", "GB2312", "yes");
XmlElement refChild = document.DocumentElement;
document.InsertBefore(newChild, refChild);
document.Save(descDirectory + @"/" + fileName + ".xml");
}
}
}
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/rjzou2006/archive/2007/06/14/1651397.aspx
- WriteXml类(C#)
- WriteXml类(C#)
- writexml.java
- datatable writexml
- DataSet.WriteXml(Stream)
- WriteXML(写给自己)
- DataTable的WriteXml
- 导出Excel没有特别的格式要求时,直接Dataset.WriteXml丢出,简单方便
- 用DataSet.WriteXml()生成xml文档,如何指定xml文档的编码为gb2312
- 【c/c++】复数类
- 【c/c++】类模板
- [C/C++] 类
- 【C/C++】嵌套类
- 【C/C++】模板类
- C++------类
- C#--类
- C++-->类
- 【C++】类
- 非常喜欢的一首日语歌曲 人生的礼物
- 列合并与拆分
- Soloris 10下oracle 10g的安装与配置
- SQL Server Profiler错误:only TrueType fonts are supported
- 从CString到char [].怎么做安全
- WriteXml类(C#)
- The 4+1 view model
- application session viewstate cookie cache详解
- 哲理故事:不过一碗饭
- flash1传值给HTML1传值给flash2
- 想读的书
- evc4工程移植vs2005所碰到的问题积累
- 好联络软件
- Google Analytics(分析)网址构建器