无忧首页企业系统我的无忧
无忧服务:
兼职活动培训
娱乐交友:
交友社区资讯
全职实习:
实习暑假寒假
微信号:school51
扫一下,立即关注
加关注
在线支付,立省10元
下载新版APP
===大学生成长生活平台===

2011年计算机等级考试二级VB考点及习题(6)

2012-12-26来源/作者:卫凯点击次数:279

  §7、文件管理控件

  文件处理 顺序文件和随机文件的打开(open)语句,EOF函数,读写语句。

  do while not eof(1) do until eof(1)

  print #1, write #1,

  input #1,a,b,c line input #1,s input(#1,100)

  get #1,a put #1,”af”

  打开方式:

  顺序文件Open "文件路径+文件名(包括文件后缀)" For Output As #1-511

  Open "文件路径+文件名(包括文件后缀)" For Append As #1-511

  Open "文件路径+文件名(包括文件后缀)"For Input As #1-511

  随机文件:Open "文件路径+文件名(包括文件后缀)"For Random As #1-511

  二进制文件:Open "文件路径+文件名(包括文件后缀)"For Binary As #1-511

  Open语句打开文件的注意:

  1.如果以Output、Append、Random、Binary模式打开一个不存在的文件时,VB自动创建一个相应文件;

  2.在Input Random Binary模式下,可以用不同的文件号打开同一文件,但Output Append方式不可以;

  3.所有当前使用的文件号必须是唯一的;

  4.如果以Output模式打开一个已存在的文件,即使没有进行写操作原来数据也将被覆盖。

  Close语句注意:(Reset)

  1.直接使用 Close语句(缺省文件号),则所有用Open语句打开的活动文件都被关闭;

  2.当程序结束时,所有打开的文件自动被关闭。

  Lock和Unlock语句注意:

  1.对于二进制文件,Lock和Unlock的是字节范围;

  2.对于随机文件,Lock和Unlock的是记录范围;

  3.对于顺序文件,Lock和Unlock的是整个文件,即使指明范围也不起作用;

  4.缺省情况下Lock和Unlock的范围是整个文件;

  5.Lock和Unlock总是成对使用。

  特别注意:在关闭文件或结束程序之前,必须用Unlock语句对先前锁定的文件解锁,否则会产生难以预料的错误。

  1.要对顺序文件进行写操作,下列打开文件语句中正确的是( )。

  Open "file1.txt" for output as #1

  Open "file1.txt" for input as #1

  Open "file1.txt" for Random as #1

  Open "file1.txt" for binary as #1

  2.在VB中文件访问的类型有( )。

  A.顺序、随机、二进制 B.顺序、随机、字符

  A. 顺序、十六进制、随机 D.顺序、记录、字符

  例如:将文件Data1中的无序数据和Data2中的有序数据插入到Data3中,要求:Data3中的数据必须也是排好序。请填写空白处以实现该题功能。

  Private Sub Form_Click()

  Dim a() As Integer, b() As Integer

  Dim k As Integer, i As Integer

  Open "e:\data1.txt" For Input As #2

  Open "e:\data2.txt" For Input As #3

  Do While Not EOF(2)

  k = k + 1

  ReDim Preserve a(k)

  Input #2, a(k)

  Loop

  _______k=0______________________

  Do While Not EOF(3)

  k = k + 1

  ReDim Preserve b(k)

  Input #3, b(k)

  Loop

  Call insert(a, b)

  Open "e:\data3.txt" For Output As #4

  _k=ubound(b)____________________________

  For i = 1 To k

  Print #4, b(i)

  Next i

  Close

  End Sub

  Private Sub insert(a() As Integer, b() As Integer)

  Dim m As Integer, i As Integer

  Dim n As Integer, j As Integer

  m = UBound(a): n = UBound(b)

  _redim preserve b(m+n)_______________________

  i = 0

  Do While i < m

  i = i + 1

  j = n

  Do While j >= 1 And a(i) < b(j)

  If a(i) < b(j) Then

  ___b(j+1)=b(j)_______________________

  j = j - 1

  Else

  Exit Do

  End If

  Loop

  __b(j+1)=a(i)___________________________

  n = n + 1

  Loop

  End Sub

  编辑推荐:

  2010年全国计算机二级考试各科模拟试题冲刺专题

  全国计算机二级考试VB全真试题与历届最新考题汇编与解答

  全国计算机等级考试二级VB模拟试题及答案解析





相关阅读



关于我们 | 联系我们 | 用户指南 | 网站地图 | 意见建议 | 会员注册 | 用户协议 | 隐私政策