vb中输入超出文件尾是什么意思?? 怎么解决??

PrivateSubcjlr_Click()Text1.Text=""OpenApp.Path+"\xscj.xlsx"ForInputAs#1Text1.Text=Te... Private Sub cjlr_Click()Text1.Text = ""Open App.Path + "\xscj.xlsx" For Input As #1Text1.Text = Text1.Text & "学号" & Space(5) & "姓名" & Space(5) & "英语" & Space(5) & "数学" & Space(4) & "计算机" & Space(3) & "历史" & Space(3) & "体育" & vbCrLfFor i = 1 To 21 Input #1, xh(i), xm(i), yy(i), sx(i), jsj(i), ls(i), ty(i) Text1.Text = Text1.Text & xh(i) & Space(5) & xm(i) & Space(5) & yy(i) & Space(7) & sx(i) & Space(6) & jsj(i) & Space(6) & ls(i) & Space(5) & ty(i) & vbCrLfNext iClose #1End Sub 展开
 我来答
baozhu32050701
推荐于2017-11-26 · 超过34用户采纳过TA的回答
知道答主
回答量:92
采纳率:0%
帮助的人:82.8万
展开全部
你想读取文件?还是将数据保存到文件,将数据保存到文件你应该用output。这个是不会超出文件尾的。但是你要是从文件中读取数据的话。由于文件的长度肯定是有限的,所以有可能回超出文件尾。若是这样,你可以加入 on error goto 或者on error resume next 语句。就不会发生错误了。
追问
读取数据  语句应该加在什么位置
追答
说实话,你的代码我没太看懂,呵呵,因为我不太习惯这样子的。我给你提供一个方式吧。
就是把文件模式设置文随机文件,这种方式的话相对会灵活许多。
dim a as string
open filename for random as #1
put #1,1,a
close #1
put语句中#1不多说,是文件号,第二个1 表示数据的记录号,第一个数据就是1,第二个数据就是2,
而且数据1和数据2的类型可以不同的。a为变量名
put是向随机文件中写,get是读取。
至于读取数据的语句加到哪里的话就自己斟酌了。什么时候用到这个数据就加到之前,
我是习惯在程序启动时候读取所有数据到变量。在变量更改的时候写出变量到文件。

顺便说一句,随机文件不需要从第一个变量开始读取的。
设计营地
2014-06-24 · 分享交流设计软件相关的知识
设计营地
采纳数:552 获赞数:860

向TA提问 私信TA
展开全部
在读取文件时,要随时判断有么有到达文件的末尾,到达就结束,要不然就会出错。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式