【问题标题】:Visual Basic Form. How to let users save text file where they wantVisual Basic 窗体。如何让用户将文本文件保存在他们想要的位置
【发布时间】:2014-03-26 01:23:38
【问题描述】:
Private Sub Button7_Click(sender As Object, e As EventArgs) Handles Button7.Click
    Dim CurrentDir As String = Environment.CurrentDirectory
    Dim OutputFile2 As String = IO.Path.Combine(CurrentDir, "input.txt")
    IO.File.WriteAllLines(OutputFile2, Result1.Lines)
End Sub

现在,我编写了将文本文件保存在当前目录中的代码。但是,我想为用户提供一个浏览按钮,以便他们可以选择保存此文本文件的位置。我该如何进行?

我自己尝试过,但在使用保存文件对话框时遇到了问题。如果您能教我如何使用保存文件对话框或无论如何编写保存浏览按钮,我将不胜感激!

【问题讨论】:

  • 你遇到了什么麻烦。要具体。
  • 我在工具箱上找到了一个保存文件对话框工具,并尝试将它与按钮结合,但它不起作用。我基本上不知道如何开始。
  • “它不起作用”——具体一点。

标签: vb.net winforms savefiledialog


【解决方案1】:

SaveFileDialog 对象的文档包含一个 example

【讨论】:

  • 从例子中,'写流的代码在这里'是什么意思?我应该写 IO.File.WriteAllLines(Stream, Result1.Lines) 吗?
  • 代码使用myStream,而不是使用IO.File.WriteAllLines(saveFileDialog1.FileName, Result1.Lines)
  • 我试过了,但它说它正在被另一个对我没有意义的进程使用。我无论如何都没有使用这个文本文件。它只会在我指定的位置创建一个空白 txt 文件。 If saveFileDialog1.ShowDialog() = DialogResult.OK Then myStream = saveFileDialog1.OpenFile() If (myStream IsNot Nothing) Then IO.File.WriteAllLines(saveFileDialog1.FileName, Result1.Lines)
  • 正如我所说,您不需要任何myStream 代码。 myStream = saveFileDialog1.OpenFile() 行导致您的错误消息 - 在 WriteAllLines 方法尝试使用它时文件已经打开。是的,消息说“另一个”进程,但这意味着它试图打开文件但无法打开。
【解决方案2】:

这是一个关于如何使用 Visual Studio 中的工具箱实现 SaveFileDialog 的教程,就像您提到的那样。代码示例使用 C#,但可以轻松转换为 VB。

链接:www.dotnetperls.com/savefiledialog

Private Sub button1_Click(sender As Object, e As EventArgs)
    ' When user clicks button, show the dialog.
    saveFileDialog1.ShowDialog()
End Sub

Private Sub saveFileDialog1_FileOk(sender As Object, e As CancelEventArgs)
    ' Get file name.
    Dim name As String = saveFileDialog1.FileName
    ' Write to the file name selected.
    ' ... You can write the text from a TextBox instead of a string literal.
    File.WriteAllText(name, "test")
End Sub

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-12
    • 2010-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多