VB读写文本文件问题

设有一个文本文件t1.txt,其中已有若干字符。在窗体上有一个文本框和一个命令按钮。要求编程实现:单击“读文件”命令按钮时,可读入该内容并显示在文本框中。对文本框中内容进... 设有一个文本文件t1.txt,其中已有若干字符。在窗体上有一个文本框和一个命令按钮。要求编程实现:单击“读文件”命令按钮时,可读入该内容并显示在文本框中。对文本框中内容进行编辑修改,单击“写文件”按钮,即可将文本框中所有字符重新写入文本文件t1.txt 展开
 我来答
微标防伪防窜货标签定制

2008-01-13 · TA获得超过2016个赞
知道大有可为答主
回答量:1512
采纳率:87%
帮助的人:555万
展开全部
'添加窗体Form1,文本框Text1,按钮Command1,Command2,然后添加如下代码:
Private Sub Form_Load()
    Command1.Caption = "读文件"
    Command2.Caption = "写文件"
End Sub

Private Sub Command1_Click() '读文件
    Text1.Text = fileStr("C:\t1.txt")
    MsgBox "读入完毕!"
End Sub

Private Sub Command2_Click() '写文件
    writeToFile "C:\t1.txt", Text1.Text
    MsgBox "写入完毕!"
End Sub
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'功能:根据所给的文件名返回文件的内容
'函数名:fileStr
'入口参数(如下):
'  strFileName 所给的文件名;
'返回值:文件的内容
'备注:sysdzw 于 2007-5-3 提供
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Private Function fileStr(ByVal strFileName As String) As String
    On Error GoTo Err1
    Dim tempInput As String
    Open strFileName For Input As #1
    Do While Not EOF(1)
        Line Input #1, tempInput
        If Right(tempInput, 1) <> Chr(10) Then tempInput = tempInput & Chr(10)
        tempInput = Replace(tempInput, Chr(10), vbCrLf)
        fileStr = fileStr & tempInput
    Loop
    If fileStr <> "" Then fileStr = Left(fileStr, Len(fileStr) - 2)
    Close #1
    Exit Function
Err1:
    MsgBox "不存在该文件或该文件不能访问!", vbExclamation
End Function
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'功能:根据所给文件名和内容直接写文件
'函数名:writeToFile
'入口参数(如下):
'  strFileName 所给的文件名;
'  strContent 要输入到上述文件的字符串
'返回值:True或False,成功则返回前者,否则返回后者
'备注:sysdzw 于 2007-5-2 提供
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Private Function writeToFile(ByVal strFileName As String, ByVal strContent As String) As Boolean
    On Error GoTo Err1
    Open strFileName For Output As #1
    Print #1, strContent
    Close #1
    writeToFile = True
    Exit Function
Err1:
    writeToFile = False
End Function
mislandeer
2008-01-13 · TA获得超过307个赞
知道小有建树答主
回答量:397
采纳率:0%
帮助的人:436万
展开全部
楼上的代码我比较怕怕,好长啊!我写的不好,但比较简单.
Private Sub Command1_Click()
Text1.Text = ""
Open ("d:\vb.txt") For Input As #1
Do While Not EOF(1)
Line Input #1, tem
Text1.Text = Text1.Text + tem + vbCrLf
Loop
Close #1
End Sub

Private Sub Command2_Click()
Open "d:\vb.txt" For Output As #1
Print #1, Text1
Close
End Sub
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
倪发宜欣嘉
2019-05-01 · TA获得超过3797个赞
知道大有可为答主
回答量:3133
采纳率:26%
帮助的人:206万
展开全部
'------API------
Private
Declare
Function
GetPrivateProfileString
Lib
"kernel32"
Alias
"GetPrivateProfileStringA"
(ByVal
_
lpApplicationName
As
String,
_
ByVal
lpKeyName
As
Any,
_
ByVal
lpDefault
As
String,
_
ByVal
lpReturnedString
As
String,
_
ByVal
nSize
As
Long,
_
ByVal
lpFileName
As
String)
As
Long
Private
Declare
Function
WritePrivateProfileString
Lib
"kernel32"
_
Alias
"WritePrivateProfileStringA"
(ByVal
_
lpApplicationName
As
String,
_
ByVal
lpKeyName
As
Any,
_
ByVal
lpString
As
Any,
_
ByVal
lpFileName
As
String)
As
Long
'-------读ini文件-------
Public
Function
GetINI(ByVal
Sect
As
String,
ByVal
Key
As
String,
ByVal
INI_Path
As
String)
As
String
Dim
tmp
As
String
*
256
GetPrivateProfileString
Sect,
Key,
1,
tmp,
256,
INI_Path
GetINI
=
tmp
End
Function
'-------读取按钮-------
Private
Sub
Command1_Click()
Dim
FilePath
As
String
FilePath
=
App.Path
&
"\test.ini"
Text1
=
GetINI("m",
"m1",
FilePath)
Text2
=
GetINI("m",
"m2",
FilePath)
Text3
=
GetINI("n",
"m1",
FilePath)
Text4
=
GetINI("n",
"m2",
FilePath)
End
Sub
'-------写入按钮------
Private
Sub
Command2_Click()
Dim
FilePath
As
String
FilePath
=
App.Path
&
"\test.ini"
WritePrivateProfileString
"m",
"m1",
Text1.Text,
FilePath
WritePrivateProfileString
"m",
"m2",
Text2.Text,
FilePath
WritePrivateProfileString
"n",
"m1",
Text3.Text,
FilePath
WritePrivateProfileString
"n",
"m2",
Text4.Text,
FilePath
End
Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式