事件C 提高xml读写速方法

c xml  时间:2021-02-14  阅读:()

dim domxmldocument as system.xml .xmldocumentdim tmppath as string=apptempfi lepathdim xmlfi le as string=tmppath+" \testxml .xml"

'窗体加载事件private sub testxml_load(byval sender as system.object, byval e as system.eventargs)handlesmybase. load

'读xm l过程测试通过dim domxmldocument as system.xml .xmldocumentdim tmppath as string=apptempfi lepathdim xmlfi le as string=tmppath+" \testxml .xml"dim reader as system.xml .xmlreader=nothingt ryreader=new xml .xmltextreader(xmlfi le)

'reader.whi le reader.readme. lboxxml . items.add(reader.name+reader.value)end whi lecatch ex as exceptionmsgbox(ex.message)final lyif not (reader is nothing) thenreader.close()end ifend tryend sub

'载入xm l事件private sub btnxml load_cl ick(byval sender as system.object, byval e as system.eventargs)handles btnxml load.cl ick

'me. lboxxml . items.clear()

' '读xm l过程测试通过

'dim reader as system.xml .xmlreader=nothing

't ry

' reader=new xml .xmltextreader(xmlfi le)

'whi le reader.read

'me. lboxxml . items.add(reader.name+":"+reader.value)

'end whi le

'catch ex as exception

'msgbox(ex.message)

'final ly

' if not (reader is nothing) then

'reader.close()

'end ifend trydim ds as new dataset

t ry

'如果直接使用ds做datasource则不会展开datagrid用dv则能直接显示正确。ds.readxml(xmlfi le)dim tb as datatabledim dv as dataviewtb=ds.tables(0)dv=new dataview(tb)datagrid1 .datasource=dv

'datagrid1 .datamember="testxmlmember"

'datagrid1 .datamember="employeefname"

'dim dxd as new xmldatadocumentcatch ex as exceptionmsgbox(ex.message.tostring)end tryend sub

'保存新建xm l内容事件private sub btnsavenew_cl ick(byval sender as system.object, byval e as system.eventargs)handles btnsavenew.cl ickdim mytw as new xmltextwriter(tmppath+" \ testxmlwrite.xml", nothing)mytw.writestartdocument()mytw.formatting=formatting. i ndentedmytw.writestartelement("team")mytw.writestartelement("player")mytw.writeattributestring("name", "george zip")mytw.writeattributestring("position”, "qb")mytw.writeelementstring("nickname", "zippy")mytw.writeelementstring("jerseynumber",xmlconvert.tostring(7))mytw.writeendelement()mytw.writeendelement()mytw.writeenddocument()mytw.close()end sub

文件很大的情况下可以考虑手动实现数据更新适配器 比如手动实现一个 xml节点搜索/更新这样就不用重写整个 xml。

如果程序的i/o不是主要问题还是用实体类整个的写入更新吧毕竟数据的完整性是第一位的。

如是文章类的对该目录建一个 xml索引文件来存放文章的编号 url等用xml的attribute作为标记不同字段 内容页面可以用另外的 html或xml页面存放用l inq to xml操作数据效率不是很差个人观点。当搜索时候只要查询指定文件名 xml或文件类型就可以了。

更多信息请查看IT技术专栏

Hosteons - 限时洛杉矶/达拉斯/纽约 免费升级至10G带宽 低至年$21

Hosteons,一家海外主机商成立于2018年,在之前还没有介绍和接触这个主机商,今天是有在LEB上看到有官方发送的活动主要是针对LEB的用户提供的洛杉矶、达拉斯和纽约三个机房的方案,最低年付21美元,其特点主要在于可以从1G带宽升级至10G,而且是免费的,是不是很吸引人?本来这次活动是仅仅在LEB留言提交账单ID才可以,这个感觉有点麻烦。不过看到老龚同学有拿到识别优惠码,于是就一并来分享给有需...

buyvm迈阿密机房VPS国内首发测评,高性能平台:AMD Ryzen 9 3900x+DDR4+NVMe+1Gbps带宽不限流量

buyvm的第四个数据中心上线了,位于美国东南沿海的迈阿密市。迈阿密的VPS依旧和buyvm其他机房的一样,KVM虚拟,Ryzen 9 3900x、DDR4、NVMe、1Gbps带宽、不限流量。目前还没有看见buyvm上架迈阿密的block storage,估计不久也会有的。 官方网站:https://my.frantech.ca/cart.php?gid=48 加密货币、信用卡、PayPal、...

炭云188元/年,上海CN2 VPS/2核/384MB内存/8GB空间/800GB流量/77Mbps端口/共享IP

炭云怎么样?炭云(之前的碳云),国人商家,正规公司(哈尔滨桓林信息技术有限公司),主机之家测评介绍过多次。现在上海CN2共享IP的VPS有一款特价,上海cn2 vps,2核/384MB内存/8GB空间/800GB流量/77Mbps端口/共享IP/Hyper-v,188元/年,特别适合电信网络。有需要的可以关注一下。点击进入:炭云官方网站地址炭云vps套餐:套餐cpu内存硬盘流量/带宽ip价格购买上...

c xml为你推荐
苏州商标注册苏州商标局在哪里郭吉军一个新的品牌,要怎么做网络推广支付宝查询余额支付宝里如何查询银行卡里面的余额?打开网页出现错误网页上有错误怎么解决?bluestacksBluestacks安卓模拟器是什么机型的?pwlosera,pw是什么,是不认识的人发的短信。请解释::ps抠图技巧如何使用PS抠图中小企业信息化中小企业信息化途径有哪些如何建立一个网站如何建立一个网站?直播加速怎么让已拍摄好的视频加速
服务器租用托管 网易域名邮箱 联通c套餐 256m内存 网站挂马检测工具 河南服务器 admit的用法 umax120 支付宝扫码领红包 新睿云 主机管理系统 免费的域名 腾讯数据库 大化网 七牛云存储 国内免备案cdn 大容量存储控制器 服务器监测软件 ibm服务器机柜 更多