WinCE中基于XML的数据同步
inCE操作系统是嵌入式操作系统中的一种,为微软所研制开发,包含inCE、inCE.NET、indows XP Embedded等一系列的Mobile indows家族。正迅速地为人们所接受。 2.2.2.Compact .Net FrameWork 随着.NET开发平台2003版的推出,微软包容了嵌入式系统的开发,使得嵌入式系统的开发更为简便更为容易。 2.3.XML文件传输 由于XML是一个文本类型的文件,因此具备跨平台的能力,可以为UNIX、LINUX等非Windows平台所接受,由于是文本类型的文件,因此传输方式可以多种多样。比如使用存储器进行传输,存储器包括存储卡、磁盘、磁带等等存储载体;也可以通过网络下载复制的功能,比如通过有线或无线局域网,或者GPRS、Moden等等网络载体;还可以通过红外端口的发送接收文件的方式进行传输。 3.实现方法 由于是WinCE,因此可以使用Visual Studio .Net 2003版进行编程,利用Visual Studio .NET 2003版中带的Compact .Net FrameWork,使所编制的程序可以运行在WinCE的嵌入式系统中。 针对微软的.NET计划,相信不久的将来,Compact .Net FrameWork也可以运行到Palm等其它嵌入式系统中。 3.1.PC端XML数据导出 假设我们已经有了数据库连接SQLconn,strSQL是待执行的SQL语句,则我们的PC端服务程序导出可以写成如下方式。 //初始化SqlDataAdapter System.Data.SqlClient.SqlDataAdapter myDataAdapter = new System.Data.SqlClient.SqlDataAdapter(); //初始化SelectCommand ,其中strSQL为待执行的SQL语句,SQLconn为数据连接 myDataAdapter.SelectCommand = new System.Data.SqlClient.SqlCommand(strSQL,SQLconn); //使用myDataAdapter初始化SqlCommandBuilder System.Data.SqlClient.SqlCommandBuilder myCB = new System.Data.SqlClient.SqlCommandBuilder (myDataAdapter); //初始化一个DataSet System.Data.DataSet DS = new System.Data.DataSet(); //执行strSQL中的SQL指令,查询结果填充到DS中 myDataAdapter.Fill (DS); //从E:ExFromPC.XSD文件中导入XML架构 DS.WriteXmlSchema(E:\ExFromPC.XSD); //按照XML架构导出XML数据到E:ExFromPC.XML中 DS.WriteXml(E:\ExFromPC.XML); 自此,XML文件已经导出完成,即可使用2.3所阐述的文件传输方式的任意一种传输到WinCE嵌入式系统中去。 3.2.WinCE端数据导入 //初始化DataSet System.Data.DataSet DS = new System.Data.DataSet(); //初始化XML架构文件操作流 FileStream FsXSD = new FileStream(\ExFromPC.xsd,FileMode.Open); //初始化XML架构读取设备 XmlTextReader xtrXSD = new XmlTextReader(FsXSD); //载入XML架构到DS中 DS.ReadXmlSchema(xtrXSD); //关闭XML架构读取设备 xtrXSD.Close(); //关闭XML架构文件操作流 FsXSD.Close(); //按照装载了的XML架构载入XML数据到DS DS.ReadXml(\ExFromPC.XML); 在载入完XML数据之后,即可通过种种方法把数据写入到数据库中,或交由其它方式处理,在此不再陈述。 3.3.WinCE端数据导出 //初始化DataSet System.Data.DataSet DS = new System.Data.DataSet(); //初始化SqlCeDataAdapter System.Data.SqlServerCe.SqlCeDataAdapter myDataAdapter = new System.Data.SqlServerCe.SqlCeDataAdapter(); //初始化SelectCommand ,其中conn是数据连接,p_strSQL待执行的SQL语句 myDataAdapter.SelectCommand = new System.Data.SqlServerCe.SqlCeCommand(p_strSQL,conn); //初始化SqlCeCommandBuilder System.Data.SqlServerCe.SqlCeCommandBuilder myCB = new System.Data.SqlServerCe.SqlCeCommandBuilder(myDataAdapter); //加载映射的数据表名p_strTableNameTemp为数据表名 myDataAdapter.TableMappings.Add(Table,p_strTableNameTemp); //把SQL语句执行结果写入到DS中 myDataAdapter.Fill (DS); //初始化XML架构文件操作流 FileStream FsXSD = new FileStream(\ExFromPC.xsd,FileMode.Open); //初始化XML架构读取设备 XmlTextReader xtrXSD = new XmlTextReader(FsXSD); //载入XML架构 DS.ReadXmlSchema(xtrXSD); //关闭XML架构读取设备 xtrXSD.Close(); //关闭XML架构文件操作流 FsXSD.Close(); //导出XML数据文件 DS.WriteXml(\ExFromPC.xml); 自此,XML文件已经导出完成,即可使用2.3所阐述的文件传输方式的任意一种传输到PC中去。 3.4.PC端XML数据导入 //初始化架构文件操作流 FileStream FsXSD = new FileStream(E:\ExFromCE.XSD,FileMode.Open); //初始化XML数据文件操作流 FileStream FsXML = new FileStream(E:\ExFromCE.XML,FileMode.Open); //初始化DataSet
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)
