Vb.net 如何在记事本文件中编辑文本框?

Vb.net 如何在记事本文件中编辑文本框?,vb.net,textbox,edit,notepad,Vb.net,Textbox,Edit,Notepad,我正在VB.net(Visual Studio)中构建一个小型桌面应用程序,我正在为此而努力 我想编辑记事本文件中的文本框。该文件将打开并保存在我的电脑桌面上,但当我在文本框中写入内容时,它不会发送到记事本。记事本仍然是空白的。。。 下面的代码是我到目前为止得到的 Private Sub BtnEditQuestion_Click_1(sender As Object, e As EventArgs) Handles BtnEdiPla.Click MsgBox("Now, a note

我正在VB.net(Visual Studio)中构建一个小型桌面应用程序,我正在为此而努力

我想编辑记事本文件中的文本框。该文件将打开并保存在我的电脑桌面上,但当我在文本框中写入内容时,它不会发送到记事本。记事本仍然是空白的。。。 下面的代码是我到目前为止得到的

Private Sub BtnEditQuestion_Click_1(sender As Object, e As EventArgs) Handles BtnEdiPla.Click
    MsgBox("Now, a notepad will be openned. Edit the question on the file.")
    Dim desktop_path As String = Environment.GetFolderPath(Environment.SpecialFolder.Desktop)
    Dim writer As TextWriter = New StreamWriter(ruta_escritorio + "\planteamiento.txt")
    writer.Write(TxtPla.Text)
    Process.Start(desktop_path + "\planteamiento.txt")
End Sub

(我还有另一个按钮,它会要求用户上传文本文件,这样文本框就会充满它的内容……如果有人知道用一个按钮同时完成这两项工作,那就太好了)

试试这个:
txtBox.text==file.ReadAllText(path)

我不认为您真的希望在程序和记事本中同时显示文件。如果用户希望在程序中编辑它,则需要两个单独的事件

我使用了
System.IO
中的
文件
对象。溪流需要关闭和处理
.ReadAllText
将为您打开和关闭文件

Private PathToFile As String = Environment.GetFolderPath(Environment.SpecialFolder.Desktop) & "\planteamiento.txt"

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    TextBox1.Text = File.ReadAllText(PathToFile) 'File must exist
End Sub

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
    MsgBox("Now, a notepad will be openned. Edit the question on the file.")
    File.WriteAllText(PathToFile, TextBox1.Text)
    Process.Start(PathToFile)
End Sub

如果要查看在记事本中所做的更改,必须将文件保存在记事本中,然后在程序中再次单击按钮1以查看更改。

txtBox.Text==file.ReadAllText(path)
;否?假设
ruta\u escritorio
desktop\u path
相同(您可能只是忘记了翻译它),当您在记事本中打开文件时(假设记事本是
.txt
文件的默认编辑器:例如,它不在我的机器中),记事本读取内存中的全部内容。它不会从流中读取文本。如果它这样做了,它将锁定流:您无论如何都无法更新文件内容。您可以使用UI自动化或使用
SendMessage
WM_SETTEXT
消息发送到记事本的
Edit
子控件来实现此行为。此外,您还应该使用using语句声明StreamWriter:
using writer=New StreamWriter(…)(…您编写,它刷新…)结束使用进程。开始(…)
这看起来与上面的一条注释相同。你的答案对此有何改进?