代码如下:
Private Sub Form_Load()
Dim a, b, c, d, e, temp, content As String
Open "f:\1.txt" For Input As #1
Do Until EOF(1)
Input #1, a, b, c, d, e
temp = a & " " & b & " " & c & " " & d & " " & e
newline = Chr$(13) + Chr$(10)
content = content & temp & newline
Loop
Close #1
Open "f:\1.txt" For Output As #1
Print #1, content
Close #1
End Sub
1.txt不是空文件
muqiao520老师
这两个写法不是一样的么
我的数据是每行10个数据的,是5的倍数
我的目的是把原文件改成5个数字一行
求教!为什么会出现“输入超出文件尾”的错误
答案:3 悬赏:60 手机版
解决时间 2021-03-06 05:18
- 提问者网友:泪痣哥哥
- 2021-03-05 23:47
最佳答案
- 五星知识达人网友:夜余生
- 2021-03-06 00:32
Input #1, a, b, c, d, e
这一句是错误的..
语法
Input #filenumber, varlist
从已打开的顺序文件中读出数据并将数据指定给变量。
你的文本是用顺序文件方法写入的吗? 如果不是的话,那么,使用这种方法读取,你必须保证你的文件的数据数量是5的整倍数,不然肯定超出文件尾的..
因为你每次读取了a,b,c,d,e 这5个数据..
这一句是错误的..
语法
Input #filenumber, varlist
从已打开的顺序文件中读出数据并将数据指定给变量。
你的文本是用顺序文件方法写入的吗? 如果不是的话,那么,使用这种方法读取,你必须保证你的文件的数据数量是5的整倍数,不然肯定超出文件尾的..
因为你每次读取了a,b,c,d,e 这5个数据..
全部回答
- 1楼网友:雾月
- 2021-03-06 02:30
Input #1, a, b, c, d, e
这句是错误的,应该是line input #1,a '意思是将该行赋值到变量A
但你说一行里面就有很多数据,而且每个数据应该有标记比如","号来隔开的吧?
- 2楼网友:举杯邀酒敬孤独
- 2021-03-06 02:07
改为这种形式看看:
Do while not EOF(1)
Line Input #1, a
temp = a & " " & b & " " & c & " " & d & " " & e
newline = Chr$(13) + Chr$(10)
content = content & temp & newline
Loop
Close #1
那就改为Line Input,整行读入a后再做处理.
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯