将Delphi的TClientDataSet生成的XML文件转成.Net的DataSet可以识别的格式
2008-11-23 14:29
567 查看
费话就不说了,转换方法如下,注意这个方法转换的时候没有生成schema,如果要生成schema稍有点麻烦呢
private string ReadDelphiDataSetToNetDataSet(string vDelphiStr, string vTableName)
{
string vResult = vDelphiStr;
XmlTextReader reader = new XmlTextReader(vDelphiStr, XmlNodeType.Document, null);
reader.Read();
MemoryStream stream = new MemoryStream();
XmlTextWriter vXmlTextWriter = new XmlTextWriter(stream, new UTF8Encoding());
vXmlTextWriter.Formatting = Formatting.Indented;
vXmlTextWriter.WriteStartDocument();
vXmlTextWriter.WriteStartElement("NewDataSet");
while (!reader.EOF)
{
if ((reader.NodeType == XmlNodeType.Element && reader.Name.ToUpper() == "ROW"))
{
vXmlTextWriter.WriteStartElement(vTableName);
if (reader.HasAttributes)
{
if (reader.MoveToFirstAttribute())
{
vXmlTextWriter.WriteElementString(reader.Name, reader.Value);
while (reader.MoveToNextAttribute())
{
vXmlTextWriter.WriteElementString(reader.Name, reader.Value);
}
}
//reader.ReadEndElement();
}
vXmlTextWriter.WriteEndElement();
}
reader.Read();
}
vXmlTextWriter.WriteEndElement();
vXmlTextWriter.WriteEndDocument();
vXmlTextWriter.Flush();
vXmlTextWriter.Close();
reader.Close();
vResult = Encoding.UTF8.GetString(stream.ToArray());
stream.Close();
return vResult;
}
相关文章推荐
- [VB.NET]vb.net如何读取数据库生成指定格式的xml文件
- 使用Asp.net 生成 xml 文件,两种方式(DataSet和自定义模式)
- box2d 描点工具生成b2Shape数据(xml通用格式),oc、c++解析模块类文件,b2Shape数据可视化工具
- 通过excel可识别的xml结构直接生成xls文件
- 将Xml文件从文本格式转换为二进制格式可以划分为六个步骤
- 解析XML文件后生成JSON格式,供WEB前端调用
- 转载把DataSet、DataTable、DataView格式转换成XML字符串、XML文件
- 数据集生成Xml 格式文件
- Delphi中将XML文件数据装入DataSet
- c#使用Dataset读取XML文件动态生成菜单的方法
- delphi自己也可以生成帮助文件
- box2d 描点工具生成b2Shape数据(xml通用格式),oc、c++解析模块类文件,b2Shape数据可视化工具
- TClientDataSet[28]: 读写其他格式的 XML 文件
- ASP.NET利用输出流生成下载文件(doc、xml..)
- asp.net 导出excel(xls)文件 资料 --- 之一: xml文件格式导出
- 用DotNetpeech.dll 可以朗读出文本,生成Wave格式的音频文件
- 节点文件将两个不同格式的XML文件,进行节点对照,并生成一个用于对照功能的XML
- 用DataSet生成指定格式的XML
- 通过asp.net 生成xml文件
- asp.net下用DataSet生成XML的问题