vb txt文本读取最后一行指定字符

怎么读取txt 文本最后的 | 字符到text1中去
文本格式
1.我是中国人 08:40|
2.我是中国人 08:41|
3.我是中国人 08:43|
4.我是中国人 08:45|
5.我是中国人 08:46|
6.我是中国人 08:48

最后结果
|6.我是中国人 08:48

Open 文件 For binary As #1
tmp=input(lof(1),1)
close#1
s=split(tmp,"|")
text1=s(ubound(s))

追问

如果我想要倒数第二个|可以吗

追答

任何一个都可以。

追问

不行啊。我怎么改还是说不了倒数第二个| 求代码

追答Open 文件 For binary As #1
tmp=input(lof(1),1)
close#1
s=split(tmp,"|")
text1=s(ubound(s)-1)

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-07-10
Private Sub Command1_Click()
Dim i%, a$(1000)
Open App.Path + "\test.txt" For Input As #1
Do
Line Input #1, a(i)
i = i + 1
Loop Until EOF(1)
Close #1
Text1 = Right(a(i - 2), 1) & a(i - 1)
End Sub追问

你不明白我的意思吗。|6.我是中国人 08:48 这里的字不是固定的有多有少还有句子可能会换行的

第2个回答  2013-07-10
读取最后一行不就可以了?追问

因为最后一行说不定会换行所以需要查找最后的一个|

追答

那你就把整个文件读出来,保存在一个变量里AllStr,
然后使用VB6 的 InStrRev函数,可以定位到最后一个要找的“|”,就可以了。
Mid(AllStr,InStrRev(AllStr,"|"),Len(AllStr)-InStrRev(AllStr,"|")-1)

追问

求完整代码

追答

你要完整的代码,就把你的文本文件发给我: [email protected]

相似回答