[英]How to create a text file and append text to the existing file?
我正在嘗試將我的 textbox1 內容保存到我的計算機的文本文件中。
我想做的是創建一個保存目錄,當它設置好后,我會將textbox1
的內容保存到那個 txt 文件中。
不止一次,我想把append后TextBox的內容放到同一個文件中。
Button2
:嘗試瀏覽並創建一個 txt 文件。
Button4
4(第一次單擊):此按鈕會將文本textbox1
1 的內容保存到創建的 txt 文件中。
Button4
(2nd click)”:這會將textbox1
的當前內容添加到同一個 txt 文件。
但我希望能夠隨時更改目錄。
我還想選擇代碼外或文本框外的路徑。
意思是,我想要一個按鈕,讓我選擇一個文件夾,我想在其中創建一個文本文件。
第二個按鈕將讓我將textbox1
內容保存到創建的文本文件中。
這是我的一些代碼,但我不知道我是否做對了,因為它現在正在做我想做的事。 請幫忙。
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim isave As New SaveFileDialog
isave.Filter = "txt files (*.txt) |*.txt"
isave.FilterIndex = 2
isave.RestoreDirectory = False
If isave.ShowDialog() = DialogResult.OK Then
IO.File.WriteAllText(isave.FileName, TextBox1.Text)
End If
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
Dim theText As String
theText = TextBox1.Text
IO.File.AppendAllText("isave", Environment.NewLine & theText)
End Sub
一種可能的進行方式:
lastSaveFileName
)存儲上次保存的文件的路徑。lastSaveFileName
lastSaveFileName
設置為空字符串,因此您不能 append 新文本到此文件。sfd.OverwritePrompt = True
並使用File.AppendAllText()
而不是File.WriteAllText()
lastSaveFileName
引用
我已將按鈕重命名為SaveFile
和UpdateFile
,將 TextBox 重命名為TextContent
:最好為控件分配有意義的名稱
SaveFileDialog object 必須Using
語句聲明,因為您需要在關閉時處理它(使用ShowDialog()
顯示的 window 無法自行處理。 Using
語句聲明一次性 object,確保 object 甚至被處理如果同時引發異常;大多數時候)
Imports System.IO
Private lastSaveFileName As String = String.Empty
Private Sub SaveFile_Click(sender As Object, e As EventArgs) Handles SaveFile.Click
lastSaveFileName = GetSaveFileName(lastSaveFileName)
If Not String.IsNullOrEmpty(lastSaveFileName) Then
File.WriteAllText(lastSaveFileName, TextContent.Text)
End If
End Sub
Private Sub UpdateFile_Click(sender As Object, e As EventArgs) Handles UpdateFile.Click
If Not String.IsNullOrEmpty(lastSaveFileName) AndAlso File.Exists(lastSaveFileName) Then
File.AppendAllText(lastSaveFileName, Environment.NewLine & TextContent.Text)
Else
MessageBox.Show(
Me, "The file has not been created yet [other instructions]",
"Save file missing", MessageBoxButtons.OK, MessageBoxIcon.Information
)
End If
End Sub
Private Function GetSaveFileName(suggestedName As String) As String
Using sfd As New SaveFileDialog()
sfd.Filter = "Text Files (*.txt) |*.txt"
sfd.FileName = suggestedName
sfd.OverwritePrompt = True
If sfd.ShowDialog() = DialogResult.OK Then
Return sfd.FileName
End If
Return String.Empty
End Using
End Function
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.