如何用vb.net 打开一个既存的txt文档。

如何用vb.net 打开一个既存的txt文档。,第1张

可以调用CMD

方法一:

  Shell("cmdexe /c call c:\新建文本文档txt", AppWinStyleNormalFocus)

缺点:不但会打开文本文件,同时还会显示一个cmd窗体。

方法二:

需要新建一个bat文件到资源里,输入start C:\新建文本文档txt

代码

shell "bat文件的路径bat"

这样就好了,两种方法各有好坏。一个会显示cmd窗体,一个需要bat文件。

Open "d:\123txt" For Output As #1 '打开一个文本文件,如果不存在就自动建立
Print #1, "要写入文件中的内容"
Close #1 '关闭文件

VB打开文件有三种方法:
1如果读取的是文本型文件(用记事本打开没有乱码的),就是顺序文件读法:
open apppath & "\indexpps" for input as #1
顺便说,apppath是反回当前程序路径的函数,故不能加引号,如果加了,若无其它错误,程序一定会报文件错误,因它找不到 "apppath\indexpps"这样的路径与文件
2如果打开的是乱码,写什么完全看不懂(不是英文之类的看不懂,是乱),那就是二进制文件,可以用随机文件或二进制读取。
随机读取,如果知道文件数据存放格式/结构才能用:
open apppath & "\indexpps" for random as #1
二进制文件读取:
open apppath & "\indexpps" for binary as #1
但这open只是打开而已,相当于VB程序与文件建立传输通道,怎么读还是自已写代码。

这就是没反应的原因:光建立通道不传输,有何用?

具体的请自已参考VB的“文件”章节,这里以一个顺序读取文本文件
c:\atxt(当然扩展名可以不是txt,只要内容是文本就行),内容是以下文本:
1234567
abcdefg
I am a boy
我很帅
如果以一行一行顺序读出,可以写如下代码(写在form_load()也行),有注释:
dim y as integer:y=freefile '取得空闲的文件号
dim ReadData as string '用来放读出的数据
open "c:\atxt" for input as #y '打开文件
do
if eof(y) then exit do '如果读到文件末就退出此循环
line input #y,ReadData '从文件中读出一行并放入ReadData
msgbox readdata '显示读出的数据
loop
close #y '关闭文件


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/10546995.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-09
下一篇2023-05-09

发表评论

登录后才能评论

评论列表(0条)

    保存