vb.net - 使用 SaveFileDialog 将数据保存到文本文件?

标签 vb.net file text dialog save

我已经查看了MSDN Example但我仍然遇到问题。

我创建了一个 super 简单的程序来将两个数字相乘,并在文本框中显示输出。现在我需要能够读取该文本框值并将该值放入文本文件中,当单击“保存到文件”按钮时打开“保存到文件”对话框。

Private Sub MutiplyBtn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MutiplyBtn.Click
    Dim FirstNum As Double = Num1.Text
    Dim SecondNum As Double = Num2.Text
    Dim Answer2 As Double = FirstNum * SecondNum
    Answerbox.Text = Answer2
End Sub

Private Sub SaveResultToFile_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SaveResultToFile.Click
    Dim myStream As Stream
    Dim saveFileDialog1 As New SaveFileDialog()

    saveFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*"
    saveFileDialog1.FilterIndex = 2
    saveFileDialog1.RestoreDirectory = True

    If saveFileDialog1.ShowDialog() = DialogResult.OK Then
        myStream = saveFileDialog1.OpenFile()
        If (myStream IsNot Nothing) Then
            System.IO.File.WriteAllText(Answerbox.Text)
            myStream.Close()
        End If
    End If
End Sub

目前,Visual Studio 给我一个错误:重载解析失败,因为没有可访问的“WriteAllText”接受此数量的参数。

最佳答案

WriteAllText静态方法需要写入数据的文件的名称。
您可以直接使用在 saveFileDialog1 中选择的名称

If saveFileDialog1.ShowDialog() = DialogResult.OK Then
    System.IO.File.WriteAllText(saveFiledialog1.FileName, Answerbox.Text)
End If

相反,如果您确实想使用 OpenFile() 方法打开的流,您的代码应该是

   If saveFileDialog1.ShowDialog() = DialogResult.OK Then
        Dim sw As StreamWriter = new StreamWriter(saveFileDialog1.OpenFile())
        If (sw IsNot Nothing) Then 
            sw.WriteLine(Answerbox.Text)
            sw.Close()
        End If 
    End If 

该代码是一个示例,您需要添加一些错误处理

关于vb.net - 使用 SaveFileDialog 将数据保存到文本文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15420593/

相关文章:

vb.net - If() 语句的奇怪行为

vb.net - 在 vb.net 中声明为 new 和 as Something = new Something 之间有什么区别?

c# - 如何将一个图形对象复制到另一个

json - 使用 Golang 修改 JSON 文件

java - 尝试在矩形内绘制文本,但在 android 上在矩形上方绘制文本

vb.net - Visual Basic 中围棋游戏的洪水填充

c - c - 如何在文件中写入两个字符串,用空格或逗号分隔?

java - 当我们创建没有扩展名的新文件时,会创建什么类型的文件?

python - 如何将字典文本文件读入数据帧

python - 当每个标签向文本添加样式时,处理文本小部件中的多个标签吗?