使用 SaveFileDialog 将数据保存到文本文件?

     2023-05-07     123

关键词:

【中文标题】使用 SaveFileDialog 将数据保存到文本文件?【英文标题】:Save Data to text tile using SaveFileDialog? 【发布时间】:2013-03-14 21:31:37 【问题描述】:

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

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

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 给我一个错误:Overload resolution failed because no accessible 'WriteAllText' accepts this number of arguments.

【问题讨论】:

【参考方案1】:

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 

代码为示例,需要添加一点错误处理

【讨论】:

谢谢,看来已经解决了。 Steve,效果很好,但这总是会覆盖数据。如何将文本附加到文件末尾? @Mikhail_Sam File.AppendAllText 或使用不同的StreamWriter constructor 史蒂夫,谢谢你这么快的反应!我不知道如何将 StreamWriter 构造函数与 saveFileDialog 一起使用:saveFileDialog.OpenFile() 返回 Stream 但 SW 构造函数将字符串作为参数!我不明白如何为流创建构造函数。你能举个例子吗?【参考方案2】:

您好我尝试了上述方法,但我以这种方式成功....

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
   SaveFileDialog1.Filter = "TXT Files (*.txt*)|*.txt"
      If SaveFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK _
      Then
         My.Computer.FileSystem.WriteAllText _
         (SaveFileDialog1.FileName, RichTextBox1.Text, True)
      End If
End Sub

【讨论】:

如何使用 SaveFileDialog 将字符串生成器的内容保存到文本文件?

】如何使用SaveFileDialog将字符串生成器的内容保存到文本文件?【英文标题】:Howtosaveanstringbuilder\'scontenttotextfileusingSaveFileDialog?【发布时间】:2008-10-2318:21:02【问题描述】:这是一个winforms应用程序。在Windows中,我希望用户单击... 查看详情

如何使用 SaveFileDialog 将多个标签和文本框(9 个标签和 9 个文本框)保存为 .txt?

】如何使用SaveFileDialog将多个标签和文本框(9个标签和9个文本框)保存为.txt?【英文标题】:Howcanisavemultiplelabelsandtextboxes(9labelsand9texboxes)as.txtusingSaveFileDialog?【发布时间】:2015-09-2314:46:47【问题描述】:我尝试了很多方法,但... 查看详情

SaveFileDialog 现有文件

】SaveFileDialog现有文件【英文标题】:SaveFileDialogexistingfile【发布时间】:2014-06-2515:44:52【问题描述】:我在C#中使用savefiledialog,我允许用户将xml节点保存到文件中,但是如果用户选择创建一个新文件并将节点保存在其中,它可... 查看详情

使用 savefiledialog 保存图像时出现问题

】使用savefiledialog保存图像时出现问题【英文标题】:Issuewhilesavingimageusingsavefiledialog【发布时间】:2012-06-1515:09:38【问题描述】:我正在使用savefiledialog来保存图像。画布是图片框,加载的图像是位图。当我尝试保存它时,文件... 查看详情

如何使用 saveFileDialog 在 C# 中保存图像? [复制]

】如何使用saveFileDialog在C#中保存图像?[复制]【英文标题】:HowtousesaveFileDialogforsavingimagesinC#?[duplicate]【发布时间】:2012-06-1517:09:43【问题描述】:可能重复:Issuewhilesavingimageusingsavefiledialog我在C#中使用Windows窗体。我应该如何使... 查看详情

Winform SaveFileDialog Word

】WinformSaveFileDialogWord【英文标题】:【发布时间】:2011-07-0508:50:22【问题描述】:我在SaveFileDialog上需要你的帮助从Temp文件夹中的代码中我插入数据的word文件。然后我在Word中打开该文件,以便对其进行编辑。当Word文档关闭时... 查看详情

SaveFileDialog 保存按钮事件

】SaveFileDialog保存按钮事件【英文标题】:SaveFileDialogSaveButtonEvent【发布时间】:2013-02-2701:26:13【问题描述】:好的,我这里有这个场景。我将一个URL指向用户以允许他们开始下载。下载按钮有一个类似www.mydomainname/files/abc.mp3的na... 查看详情

在 C# 中使用 SaveFileDialog 保存为特定文件格式

】在C#中使用SaveFileDialog保存为特定文件格式【英文标题】:SavingtoaspecificfileformatwithSaveFileDialoginC#【发布时间】:2015-03-0211:04:20【问题描述】:我正在使用图片框来编辑图像,并使用文件保存对话框来保存图像。我遇到的问题是... 查看详情

saveFileDialog:文件名无效

】saveFileDialog:文件名无效【英文标题】:saveFileDialog:Thefilenameisnotvalid【发布时间】:2016-04-0206:30:41【问题描述】:使用C#在VisualStudio2015中创建应用程序,我想将文件保存到用户想要的任何位置,因此我已将SaveFileDialog对象添加... 查看详情

saveFileDialog-Image:选择图像,然后将其保存在另一个文件夹中

】saveFileDialog-Image:选择图像,然后将其保存在另一个文件夹中【英文标题】:saveFileDialog-Image:Selectimageandthensaveitinanotherfolder【发布时间】:2018-11-0922:03:30【问题描述】:我正在创建一个应用程序,我想创建一个标签,单击该标... 查看详情

c# savefiledialog 锁定到特定目录? [复制]

】c#savefiledialog锁定到特定目录?[复制]【英文标题】:c#savefiledialoglocktoparticulardirectory?[duplicate]【发布时间】:2014-03-0610:56:09【问题描述】:如何在c#中使用Savefiledialog将文件保存到特定目录。打开保存文件对话框时,路径用户不... 查看详情

openfiledialog和savefiledialog的简单使用

//文件名privatestringcurFileName;//图像对象1privateBitmapcurBitmap;//将本地图片保存到pictureBox中privatevoidbutton1_Click(objectsender,EventArgse){   OpenFileDialogopnDlg=newOpenFileDialog(); &nbs 查看详情

如何使用 savefiledialog 在进度条上显示进度?

】如何使用savefiledialog在进度条上显示进度?【英文标题】:Howtodisplayprogressonaprogressbarusingsavefiledialog?【发布时间】:2017-07-2418:03:38【问题描述】:我想在Windows窗体中使用“SaveFileDialog”和“ProgressBar”显示保存文件的进度。保... 查看详情

SaveFileDialog而不是硬编码保存方向

】SaveFileDialog而不是硬编码保存方向【英文标题】:SaveFileDialoginsteadofhardcodingsavedirection【发布时间】:2017-02-0720:09:58【问题描述】:好的,我已经做到了这一点,但现在我有点卡住了。我创建了一个用于保存和加载学生成绩的Win... 查看详情

在 Silverlight SaveFileDialog 中打开文件而不是保存文件

】在SilverlightSaveFileDialog中打开文件而不是保存文件【英文标题】:OpenFileInsteadofSaveFileinSilverlightSaveFileDialog【发布时间】:2009-11-2709:22:39【问题描述】:在Silverlight中,有一个SaveFileDialog允许您将文件保存到用户的本地计算机。对... 查看详情

SaveFileDialog c#的默认文件名

】SaveFileDialogc#的默认文件名【英文标题】:DefaultfilenameforSaveFileDialogc#【发布时间】:2016-12-1907:24:03【问题描述】:我几乎没有将网格数据导出到excel的表单,每次导出表单时它都会调用SaveFileDialog控件-为此我有一个不同的表单... 查看详情

在c#中,在savefiledialog中保存选定路径中的多个文件(代码片段)

我正在使用C#和silverlight5.我使用SaveFileDialog来获取用户选择的文件名。现在我需要在不同扩展名的同一位置保存多个文件。我尝试了以下内容stringdirectory=System.IO.Path.GetDirectoryName(dialog.SafeFileName);StreamfileStream=dialog.OpenFile();StreamWri... 查看详情

c# savefiledialog 保存特定长度的文本

】c#savefiledialog保存特定长度的文本【英文标题】:c#savefilediaglogsavingtextofspecificlength【发布时间】:2011-03-0421:11:28【问题描述】:我的代码是-StreammyStream;saveFileDialog1=newSaveFileDialog();saveFileDialog1.Filter="Ticketfiles(*.tkt)|*.tkt";saveF 查看详情