我正在尝试将插入到文本框中的数据发送到记事本文档中,以便可以保留数据以供将来参考,因为我正在尝试创建评估日期提醒,因为我是学生。
但每当我尝试通过写入数据来发送带有此代码的数据=" txtAssign_Name,txtAssign_Due"当我在运行程序后检查记事本时,文档中的所有内容都是txtAssign_Name,txtAssign_Due。
Private Sub Form_Load()
Dim Data As String
txtAssign_Name.Text = ""
txtAssign_Due.Text = ""
Data = ""
Open "F:\Personal\date calender test - Copy\test.txt" For Output As #1
Print #1, Data
Close #1
End Sub
答案 0 :(得分:2)
试试这个:
Data = txtAssign_Name.Text & ", " & txtAssign_Due.Text
(在上面的行中,您不希望将这些值设置为“”)
答案 1 :(得分:0)
注意 - 使用内置的VB6写入文本文件将导致输出格式化,以便VB6可以再次读取它。因此所有字符串都会引用它们,其他值以各种奇怪的方式显示,逗号分隔所有值。
如果希望输出文本文件主要供人类使用,那么我发现使用richtextbox控件可以更好地创建文件。从Project中添加 - >组件 - >控制 - > Microsoft Rich Textbox Control 6.0
将Rich文本框添加到表单中(如果您不希望用户看到它,则可以设置visible = false)。将数据添加到其中:
RichTextBox1.text = txtAssingn_Name.text & ", " & txt_Assing_Due.text
' If you need to add more things, add them on to the end like this
RichTextBox1.text = richtextbox1.text & vbcrlf & "More text on the next line"
然后,当添加所有数据时,您只需执行此操作
RichTextBox1.SaveFile "C:\Test.txt", rtfText
rtfText是一个可视基本常量,它告诉RTB保存为纯文本。改编是rtfRTF。您可以在MSDN
上了解有关RTB的更多信息答案 2 :(得分:0)
好的,所以上面的评论表明你希望能够将数据读回VB。
问题中显示的代码只会输出一个空白文本文件,因为变量Data设置为“”,这就是输出的全部内容。
你需要的是这样的东西
private Sub SaveData()
dim SaveFile as integer
SaveFile = Freefile ' This gets a file number not currently in use
Open "F:\Personal\date calender test - Copy\test.txt" For Output As #Savefile
write #SaveFile, txtAssign_Name.Text, txtAssign_Due.Text
close #savefile
end sub
在适当的地方拨打SaveData
。不形成负载,因为用户此时不会输入任何内容。在用户按下按钮之后,或者在Form_Unload上,如果您希望它在表单关闭时自动保存。
再次填充表单,类似
private sub LoadData()
dim LoadFile as integer
dim StringData as string
loadfile = freefile
Open "F:\Personal\date calender test - Copy\test.txt" For Input As #loadfile
input #loadfile, StringData
txtAssign_Name.Text = StringData
input #loadfile, StringData
txtAssign_Name.Text = stringdata
close #loadfile
end sub
您还应该在处理文件时添加错误处理。 VB6非常特别,在处理文件时很容易抛出异常。