打开文本文件是不少程序必须处理的问题。如何更有效地打开文本文件应该是一个值得研究的课题。为此,笔者将自己搜集到的几种方法无私地奉献出来(-_-),供各位参考。 下面所举的例子均假设F盘下有一个名为d.txt的文本文件,若需要尝试这些例子请作相应的改动。 方法一: 用定长的String变量获取文本内容。由于定长String变量支持的下界为65400,所以在打开超过32K字节的文件时超出部分的字节将无法获取: PrivateSubCommand1_Cliack() DimsAAsString*65400'声明定长String变量 Open"F:/d.txt"ForBinaryAs#1'用二进制打开文件 Get#1,sA'用Get语句从文件中获取字节 Text1=sA'显示打开的文件 Close#1'关闭文件 EndSub 方法二: 先声明一字符串变量,然后用空格填充字符串,使变量大小与文件大小一致,再通过Get语句将文件全部数据存储到变量中,从而达到获取整个文件字节数的目的。此法可以打开大于32K的文件,但应该注意的是,装载文件的容器必须能装载大于32K的文件,下例用RichTextBox控件显示打开的文件: PrivateSubCommand1_Click() DimsAAsString Open"f:/d.txt"ForBinaryAs#1 sA=Space(LOF(1))'用空格填充sA变量 Get#1,sA'用Get语句获取文件全部内容 RichTextBox1.Text=sA Close#1 EndSub 方法三: 用StrConv函数将文件的控制字符串数据和Unicode码之间进行转换,从而达到打开文件的目的。可打开任意大小文件。此法笔者曾有一篇文章谈及,这里再给一个简单例子: PrivateSubCommand1_Click() Open"f:/d.txt"ForInputAs#1 RichTextBox1.Text=StrConv(InputB$(LOF(1),1),vbUnicode) Close#1 EndSub 方法四: 用Shell语句直接调出Windows的记事本,给个文件名即可轻而易举地打开文本文件。此法适合于打开程序的Readme文件(注意:在可执行文件和要打开的文本文件之间要有空格): Shell"NotePad.EXEf:/d.txt",vbNormalFucus 方法五: 用RichTextBox控件自身的LoadFile属性打开文件: RichTextBox1.LoadFile"f:/d.txt",rtfText
原文链接:https://www.f2er.com/vb/262530.html