vb怎么获得txt文件中的行数?怎么实现?

 我来答
dfk1979
2019-10-07 · TA获得超过2287个赞
知道大有可为答主
回答量:2197
采纳率:80%
帮助的人:1131万
展开全部
如果文本很大,那用for、do就太慢太慢了,我给大家一个快速查询的方法:
Dim Oc,Fs,S,X
Set Fs = Oc.OpenTextFile("C:\Test.Txt", 1)'用FSO打开TXT文件
S = Fs.ReadAll'获取全文
Fs.Close'关闭文件
X = (Len(S) - Len(Replace(S, vbCrLf, ""))) / Len(vbCrLf) + 1 '统计总行数:用字符串替换法得到一共多少个回车,然后再加一就得到总行数了
成长的小码农
推荐于2016-08-14 · TA获得超过1842个赞
知道小有建树答主
回答量:872
采纳率:66%
帮助的人:1018万
展开全部
添加 Text1, Multiline的属性要设为True

Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Const EM_GETLINECOUNT = &HBA
Dim fname$, aa$, jj&
Private Sub Form_Load()
fname = "c:\test.txt" '改为你自己的文件名与路径(app.path)
Open fname For Input As #1
Text1.Text = ""
While Not EOF(1)
Line Input #1, aa
Text1.Text = Text1.Text & aa & vbCrLf
Wend
jj = SendMessage(Text1.hwnd, EM_GETLINECOUNT, 1, 0)
MsgBox jj
End Sub
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zg1987219
推荐于2016-12-04 · 超过15用户采纳过TA的回答
知道答主
回答量:32
采纳率:100%
帮助的人:27.9万
展开全部
dim TT() as String
dim ss as Integer
open txt for input as #1
Do While Not EOF(1)
Input #1, TT(ss)
ss=ss+1
Loop
Close 1#
txt 是txt文件名 ss 就是行数
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-03-04
展开全部
对的 用ubound(split(文本内容,vbcrlf))+1就是行数
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2014-03-04
展开全部
先读取,然后用分割函数分割回车符,之后判断数组长度
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式