list1.additem j 意思就是把j添加至list1列表中,这是在一个for 循环中,循环了10次,添加了10次 j,即 list1 中 有10列分别为:1,3,6,10,15,21,28,36,45,55
创新互联是一家专业提供海门企业网站建设,专注与成都做网站、网站建设、H5网站设计、小程序制作等业务。10年已为海门众多企业、政府机构等服务。创新互联专业网络公司优惠进行中。
下面又来了一个循环, list1.removeitem 删除列,删除的是 list1.listcount - i ,list1.listcount 就是总列数为10,减去 i ,i 是1到4,即10-1,9-2,8-3,7-4 每减掉一次,list1.listcount 就少了一条记录。
(注意,list1.listcount-1 是最后一条记录)
减掉了第 9,7,5,3列
剩余为 1,3,6,15,28,45
结果为:3,15,28
'ListCount返回列表框中的项目总数
'ListCount-1是列表框中最后一个项目的索引号
'亏你提醒了,我写错了,上面修改了,第一个索引为0,最后一个为9.
'也就是,问题所问的第二列的索引为1,第四列的索引为3...
不知道你数据表中那一列数据是什么类型的数据,所以我全部按字串来处理。
首先声明一个数组,和即将用来计数的数字:
dim nums() as string
Dim i As Integer = 0
mycon.open '然后,连接数据库,按你的声明来:
dim mycom as new sqlcommand("select * from 你要读取数据的表", mycon)'接下来,声明一个执行数据库语句命令的com:
'然后,对数据库返回的结果进行操作(一般会将执行结果存放起来,再操作,我这里省去了存放这步):
With mycom.ExecuteReader() '对返回的结果,即查询到的表进行操作
If .HasRows Then '判断是否有数据,有数据就进入下面进行读取
Do While .Read '读取一行数据
If Not (String.IsNullOrEmpty(.GetString(0))) Then '检查表列的数据是否为空,不为空就进入下面,进行保存。这里要说下getstring这个,是读取某列数据中的字串,如果该列数据不是字串,那么需要用getvalue(0),0代表该列在表中的位置,从0开始,即0表示第一列。
ReDim Preserve nums(i) '重置数组大小,即为即将要保存的数据准备一个位置
nums(i) = .GetString(0) '将数据放入到数组中
i = i + 1 '循环,直到结束
End If
Loop
End If
End With
mycon.close '最后记得要关闭数据库连接
数据存入数组很简单,其实难点是连接数据库,从数据库拿数据,这难点原理简单,但因为格式,数据类型等问题,很容易出错。
以上,数据到了数组,你应该会操作了吧。其实建议直接对从数据库返回的结果进行操作,不需要用数组的。
list1.additem j 意思就是把j添加至list1列表中,这是在一个for 循环中,循环了10次,添加了10次 j,即 list1 中 有10列分别为:1,3,6,10,15,21,28,36,45,55
下面又来了一个循环, list1.removeitem 删除列,删除的是 list1.listcount - i ,list1.listcount 就是总列数为10,减去 i ,i 是1到4,即10-1,9-2,8-3,7-4 每减掉一次,list1.listcount 就少了一条记录。
(注意,list1.listcount-1 是最后一条记录)
减掉了第 9,7,5,3列
剩余为 1,3,6,15,28,45
结果为:3,15,28
'ListCount返回列表框中的项目总数
'ListCount-1是列表框中最后一个项目的索引号
'亏你提醒了,我写错了,上面修改了,第一个索引为0,最后一个为9.
'也就是,问题所问的第二列的索引为1,第四列的索引为3...
DataView类的实例本身就可以当数组使用:
//DataView DV;
DataRowView DRV=DV[行号];
如果要导出某列数据可这样做:
//DataView DV;int I;
object[] OS = new object[DV.Count];
for (I = 0; I OS.Length; I++)
{
OS[I] = DV[I][列号或列名称];
}
vb.net例子:
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim DV As DataView : Dim I As Int16
DV = New DataView(New DataTable("新表"))
DV.Table.Columns.Add("列1")
DV.AddNew() : DV.AddNew() : DV.AddNew() : DV.AddNew()
DV.Item(0)(0) = "a"
DV.Item(1)(0) = 56
DV.Item(2)(0) = 8.56
DV.Item(3)(0) = "fdg"
Dim OS(DV.Count - 1) As Object
For I = 0 To OS.Length - 1
'OS(I) = DV(I)(列号或列名称)
OS(I) = DV(I)(0)
Next I
End Sub
End Class
代码及注释如下:
Dim aa$, s, ss'定义变量
Private Sub Form_Load()
Open "c:\temp.txt" For Input As #1'打开txt文件
aa = StrConv(InputB(LOF(1), 1), vbUnicode)'将文本读入aa中
Close #1'关闭文件
End Sub
Private Sub Command1_Click()
s = Split(aa, vbNewLine)'将文本分离出来并放入数组s中
For i = 0 To UBound(s)'i从0到S的最大元素数循环
If s(i) "" Then'如果数组部位空
ss = Split(s(i), "=")'择将数组按照=分离,并放入数组ss
Print Val(ss(1))‘显示数值化的数组ss第一个元素
End If
Next i
End Sub
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款