分享
 
 
 

VB.NET与XML的实例操作

王朝c#·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

'

再建立项目的文件夹的bin文件夹下

'创建两个文件

'一个是"myxml.xml"

'一个是"myxml.mdb"

'这里面有一个表"users"三个字段名"nameid","age","faverity"

'再转到图形界面

'单击"工具箱"的"数据"把"OleDbConnection"," OleDbComman","DataSet","OleDbDataAdapter"

'拉入窗体界面

'依次对这几个控件进行操作

'我的文件夹是D:\vbproject\WindowsApplication1

'D:\vbproject\WindowsApplication1/bin/myxml.xml

'D:\vbproject\WindowsApplication1/bin/myxml.mdb

//======================准备结束==============

(1)首先在机子上要有.Net FrameWork

打开VS.NET依次展开:文件-新建-项目;

再选择VISUAL-BASIC-项目-Windows应用程序

这就是所需要一个小界面

现在一步步的来写代码,完成它的功能

首先来完成添加功能:

我们目标是:通过这三个文本框(姓名,年龄,爱好)来添加到数据库中。然后再把这个数据库的表保存成XML格式

双击"添加"按钮

在里面写下以下这些代:(VB写的语言,不是C#)

If TextBox1.Text < "" And TextBox2.Text < "" And TextBox3.Text < "" Then

'在三个文本框都不为空时,执行以下操作,

'否则出错

Dim strsel As String

strsel = "select * from users where nameid='" & TextBox1.Text & "'"

'建立一个查询字符串,看要要添加的姓名,是否已在数据中存在,如果不存在就可以添加

OleDbCommand1 = New OleDbCommand

Me.OleDbCommand1.CommandText = strsel

Me.OleDbCommand1.Connection = OleDbConnection1

OleDbConnection1.Open()

Try

'进行异常处理

Dim reader As OleDbDataReader = OleDbCommand1.ExecuteReader()

If reader.Read() Then

'通过DataReader来读取,如果读得到,表明数据在有这个姓名存在,不添加;

ListBox1.Items.Add("已经有该记录!")

Else

reader.Close()

'要对数据库进行操作,首先把DataReader关掉;

Dim insert As String

insert = "insert into users(nameid,age,faverity) values('" & TextBox1.Text & "','" & TextBox2.Text & "','" & TextBox3.Text & "')"

'建立一个插入字符串

OleDbCommand1 = New OleDbCommand

Me.OleDbCommand1.CommandText = insert

Me.OleDbCommand1.Connection = Me.OleDbConnection1

Me.OleDbCommand1.ExecuteNonQuery()

ListBox1.Items.Add("添加成功!!")

'以下是把数据库的数据保存为XML格式

DataSet1 = New DataSet

OleDbDataAdapter1 = New OleDbDataAdapter("select * from users", OleDbConnection1)

OleDbDataAdapter1.Fill(DataSet1, "users")

DataSet1.WriteXml("myxml.xml")

End If

Catch ex As Exception

ListBox1.Items.Add("Errors!")

End Try

OleDbConnection1.Close()

Else

MessageBox.Show("请输入完整!!")

End If

//==================接下来是对数据库进行查询===================

'双击"查找"按钮

'写入以下代码

If TextBox4.Text < "" Then

'还是和上面一样如果文本框为空,就不执行,如果不为空,就执行下面的操作

ListBox1.Items.Clear()

'首先把listBox清空

Dim searchtext As String

searchtext = TextBox4.Text

OleDbConnection1.Open()

Dim selstring As String

selstring = "select * from users where nameid like '%" & searchtext & "%'"

' 建立查询字符串,可以支持模糊查询

OleDbCommand1 = New OleDbCommand

Me.OleDbCommand1.CommandText = selstring

Me.OleDbCommand1.Connection = OleDbConnection1

'以下几句是显示匹配的条数

DataSet1 = New DataSet

OleDbDataAdapter1 = New OleDbDataAdapter(selstring, OleDbConnection1)

OleDbDataAdapter1.Fill(DataSet1, "users")

ListBox1.Items.Add("共有" & DataSet1.Tables("users").Rows.Count & "条匹配的记录")

ListBox1.Items.Add("-------------------------------------------------------------")

Try

'进行异常处理

Dim cmdreader As OleDbDataReader = OleDbCommand1.ExecuteReader()

While cmdreader.Read

'注意这里要用while

'不然就无法进行循环,就只能进行一次查询

ListBox1.Items.Add(cmdreader("nameid").ToString())

ListBox1.Items.Add(cmdreader("age").ToString())

ListBox1.Items.Add(cmdreader("faverity").ToString())

ListBox1.Items.Add("----------------------------------")

End While

cmdreader.Close()

OleDbConnection1.Close()

Catch ex As Exception

ListBox1.Items.Add("Errors")

End Try

Else

End If

//================再把来XML文档,以XML形式显示在ListBox里面

双击"XML文档" 写进下面这些代码:

ListBox1.Items.Clear()

' 清空listBox

Dim xtr As XmlTextReader = New XmlTextReader("myxml.xml")

'创建成一个XmlTextReader读取"myxml.xml"文档

While xtr.Read

Select Case (xtr.NodeType)

' 咱们用select case 形式来选择xml节点类型

Case XmlNodeType.XmlDeclaration

'先从ListBox里写进xml声明=====xmldeclaration

ListBox1.Items.Add("<?xml version='1.0' encoding='gb2312'?")

'再依次显示节点的名称,值

'包括根节点

Case XmlNodeType.Element

ListBox1.Items.Add("<" & xtr.Name & "")

Case XmlNodeType.Text

ListBox1.Items.Add(xtr.Value)

Case XmlNodeType.EndElement

ListBox1.Items.Add("</" & xtr.Name & "")

End Select

End While

xtr.Close()

'关闭xmlTextReader

//========再把数据库中所有数据显示在ListBox中========

'双击"查看全部"按钮

'写入下面的一些代码:

ListBox1.Items.Clear()

'这些代码大家应该可以看得懂了

OleDbConnection1.Open()

Dim selall As String

selall = "select * from users"

OleDbCommand1 = New OleDbCommand

Me.OleDbCommand1.CommandText = selall

Me.OleDbCommand1.Connection = OleDbConnection1

Try

Dim creader As OleDbDataReader = OleDbCommand1.ExecuteReader()

While creader.Read

ListBox1.Items.Add("name: " & creader("nameid").ToString() & "; age :" & creader("age").ToString() & "; faverity :" & creader("faverity").ToString())

End While

creader.Close()

Catch ex As Exception

ListBox1.Items.Add("Errors")

End Try

OleDbConnection1.Close()

//==========================再来进完成删除按钮=================

'双击"删除"按钮

'写入以下的代码

If TextBox4.Text < "" Then

'如果不为空,进行以下操作

ListBox1.Items.Clear()

'先清空ListBox

OleDbConnection1.Open()

' 建立连接

Dim delstring As String

delstring = TextBox4.Text

Dim delsel As String

delsel = "select * from users where nameid='" & delstring & "'"

'创建查询字符串

OleDbCommand1 = New OleDbCommand

Me.OleDbCommand1.CommandText = delsel

Me.OleDbCommand1.Connection = OleDbConnection1

Try

Dim selreader As OleDbDataReader = OleDbCommand1.ExecuteReader()

If Not selreader.Read Then

'假如读不到,就表明数据库无此数据,无法进行删除操作

MessageBox.Show("数据库中无该记录!")

Else

selreader.Close()

'要对数据进行操作,必须首把DataReader关掉

Dim delrecord As String

delrecord = "delete * from users where nameid='" & delstring & "'"

'建立删除字符串sql语句,以上都是

OleDbCommand1 = New OleDbCommand

Me.OleDbCommand1.CommandText = delrecord

Me.OleDbCommand1.Connection = OleDbConnection1

Me.OleDbCommand1.ExecuteNonQuery()

Me

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有