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

Posted

技术标签:

【中文标题】如何使用 SaveFileDialog 将多个标签和文本框(9 个标签和 9 个文本框)保存为 .txt?【英文标题】:How can i save multiple labels and textboxes (9 labels and 9 texboxes) as .txt using SaveFileDialog? 【发布时间】:2015-09-23 14:46:47 【问题描述】:

我尝试了很多方法,但没有任何效果..每次用户输入时我都需要将它们保存到 .txt 文件中,然后他选择要保存的位置..我使用的是 Visual Basic 2008

这是我最后一次尝试:

试试 Dim dlg As SaveFileDialog = New SaveFileDialog dlg.Title = "保存" dlg.Filter = "文本文件(.txt)|.txt|所有文件(.)|.|富文本文件(.rtf)|.rtf" 如果 dlg.ShowDialog() = System.Windows.Forms.DialogResult.OK 那么 My.Computer.FileSystem.WriteAllText("c:\value1.txt", Label1.Text & TextBox13.Text & Label2.Text & TextBox12.Text & Label3.Text & TextBox14.Text & Label4.Text & TextBox3.Text & Label5 .Text & TextBox6.Text & Label6.Text & TextBox7.Text & Label7.Text & TextBox8.Text & Label8.Text & TextBox9.Text & Label9.Text & TextBox10.Text,假) 万一 Catch ex As Exception : End Try

【问题讨论】:

请显示您到目前为止尝试了什么 尝试 Dim dlg As SaveFileDialog = New SaveFileDialog dlg.Title = "Save" dlg.Filter = "Text Files(.txt)|.txt|All Files(.)|*.*|富文本文件 (.rtf)|.rtf" 如果 dlg.ShowDialog() = System.Windows.Forms.DialogResult.OK 那么 My.Computer .FileSystem.WriteAllText("c:\value1.txt", Label1.Text & TextBox13.Text & Label2.Text & TextBox12.Text & Label3.Text & TextBox14.Text & Label4.Text & TextBox3.Text & Label5.Text & TextBox6.Text & Label6.Text & TextBox7.Text & Label7.Text & TextBox8.Text & Label8.Text & TextBox9.Text & Label9.Text & TextBox10.Text, False) 这是剩下的代码:RichTextBox1.SaveFile(dlg.FileName, RichTextBoxStreamType.RichText) End If Catch ex As Exception : End Try 注释不是展示代码的最佳方式。只需编辑您的问题并在那里添加代码。如果您有格式问题,请不要担心,有人会帮助您 【参考方案1】:

您遇到了什么错误?如果指定文件名/路径,为什么要显示 FileSaveDialog?为什么将 False 传递给 WriteAllText 方法,而不是像 System.Text.Encoding.ASCII 这样的 Encoding 类型?

如果你改为这样做会怎样?

Imports System.IO

Public Class Form1

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Try
        Dim myStream As StreamWriter
        Dim saveFileDialog1 As New SaveFileDialog()

        saveFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*|Rich Text Files (.rtf)|.rtf"
        saveFileDialog1.FilterIndex = 1
        saveFileDialog1.RestoreDirectory = True

        If saveFileDialog1.ShowDialog() = DialogResult.OK Then
            myStream = New StreamWriter(saveFileDialog1.OpenFile())
            If (myStream IsNot Nothing) Then
                myStream.WriteLine(Me.Label1.Text & " " & Me.TextBox1.Text)
                'Additional lines, or however you want to format
                myStream.Close()
            End If
        End If

    Catch ex As Exception
        'Error handling
    End Try
End Sub

End Class

【讨论】:

Woooow 非常感谢它的工作原理:D :D :D 感激 :')

以上是关于如何使用 SaveFileDialog 将多个标签和文本框(9 个标签和 9 个文本框)保存为 .txt?的主要内容,如果未能解决你的问题,请参考以下文章

在C#中,在saveFileDialog中保存选定路径中的多个文件

不使用 SaveFileDialog 保存文件

C# SaveFileDialog 从多个扩展名中设置一个在未键入扩展名时自动添加扩展名

如何使用 SaveFileDialog 的过滤器

如何从 SaveFileDialog.FileName 仅获取目录名称

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