偶最近写个程序,有些气象资料,决定把数据放在一个文件里,用的时候读取。考虑到如果需要用其他地区的气象资料,能够方便的更改或替换数据文件,所以不打算用2进制文件和文本文件。也许有大虾说用数据库就是了。1来偶从来没用VB操作过数据库;2数据并不是非常多,杀鸡不用牛刀;3呢,考虑到数据文件更新要简单,因为程序写出来是给不懂编程不懂数据库的人用的。
哪位大虾能给个解决方案?小弟感激涕零!希望能说明数据文件的类型,如何读取,并给出代码。
哪位大虾能给个解决方案?小弟感激涕零!希望能说明数据文件的类型,如何读取,并给出代码。
毛病在于有时当用户直接打开了文本方式的记录并修改后就读不出来了
还有一种方法:还是使用数据库,可以用简单的ACCESS数据库来写,只要有OFFICE软件,就可以打开编辑了.
比较简单的使用ACCESS数据库的方法:
先在ACCESS里建好数据库和表,比如:
数据库文件 DB1.MDB(保存在工程的相同路径下),表的名字为 TABLE1, 一共两个字段:NO(编号,整数型),TMP(温度,单精度型)新建工程,在菜单选'工程"-->"引用"-->"DAO"(3.51或3.6都可以)
dim MDB as Database
dim REC as RecordSet
MDB=OPENDATABASE(APP.PATH & "\DB1.MDB")'打开数据库文件
SET REC=MDB.OPENRECORDSET("SELECT * FROM TABLE1")'打开表,数据表已经打开可以操作了
...
介绍一些常用的命令:
MSGBOX "编号:" & REC("NO").VALUE & "温度" & REC("TMP").VALUE
'显示一个记录,当然你也可以把内容用其他方式显示,我是偷懒的写法,主要是说明如何读到当前记录的值
REC.MOVELAST '移动到最后一条记录
REC.MOVEFIRST'移动到第一条记录
REC.MOVENEXT'移动到下一条记录
REC.MOVEPRIVOUS'移动到前一条记录
REC.FINDFIRST(SQL) '查询符合条件的第一条记录
REC.FINDLAST(SQL) '查询符合条件的最后一条记录
REC.FINDNEXT(SQL) '查询符合条件的下一条记录
REC.FINDPRIVATE(SQL) '查询符合条件的前一条记录
'SQL是一个查询字符串,如果不会写可以到CSDN上问,也可以看看MSDN
REC.ADDNEW '添加一条空记录,使用这条命令后,就可以通过向REC("NO").VALUE和REC("TMP").VALUE赋值来增加内容了,赋值完毕,使用REC.UPDATA来保存
REC.MODIFY '修改当前记录(可以通过上面的移动命令来移动到要修改的记录上也可以通过查询得到的当前记录上),修改的方法也是赋值,只不过现在是修改而已,该好后一样使用REC.UPDATA来保存
判断是否已经到表的最后可以使用REC.EOF=TRUE (EOF就是END OF FILE)
判断是否已经到表的最前可以使用REC.BOF=TRUE (BOF就是BEGIN OF FILE)以上就是打开和操作ACCESS数据库的最简单的方法及命令.希望对楼主有用.
数据库这个东西呢,不必太精通,也不能不会,如果楼主用得不是很多的话,只要会用ACCESS就足够了.
Open pathname [For Random] As filenumber Len = reclength '打开随机文件
Get #FileNum, Position, variable '读取Position处记录到variable
Put #FileNum, Position, variable '替换或添加
该目录下的文件有重名啊
2.xml,是发展方向,可以当数据库使,在数据量不大时。
3。用文本文件。
vb操作数据库并不复杂,用ado很方便