将Richtextbox保存为.txt,但格式与vb.net2010相同

时间:2018-07-08 02:53:19

标签: vb.net

当我单击“保存”按钮时,richtextbox1的输出将保存在.txt中,但是我的问题不是richtextbox1中的所有格式在我保存的.txt中都不一样。该如何解决?

Private Sub ADD_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ADD.Click       
    RichTextBox1.AppendText(OutputTstm.Text & " " & vbNewLine)
    RichTextBox1.AppendText("*********************" + vbNewLine)      
End Sub

Private Sub btnsave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnsave.Click
    Dim isave As New SaveFileDialog

    isave.Filter = "txt files (.txt) |*.txt"
    isave.FilterIndex = 2
    isave.RestoreDirectory = False

    If isave.ShowDialog = DialogResult.OK Then
        IO.File.WriteAllText(isave.FileName, RichTextBox1.Text)
    End If
End Sub

![Richtextbox1到记事本] [1] ck.imgur.com/Lw6gz.png

2 个答案:

答案 0 :(得分:0)

Text的{​​{1}}就像常规RichTextBox的{​​{1}}一样。 Text属性包含所有标记以及所有格式。

问题是,您无需使用任何一个属性即可将内容保存到文件中。 TextBox具有Rtf方法,可让您保存纯文本或RTF格式。

有一种相应的RichTextBox方法将文件读入控件。

此外,如果要保存RTF而不是纯文本,则应使用“ .rtf”扩展名而不是“ .txt”。

答案 1 :(得分:0)

RichTextBox类中有一个函数,该函数无需使用StreamReader即可保存文件。

它是RichTextBox.SaveFile()。 该函数需要一些参数,而您需要的参数是RichTextBox.SaveFile(FileName As String, FileType As RichTextBoxStreamType)

使用这些参数,您需要的代码是RichTextBox1.SaveFile(isave.FileName, RichTextBoxStreamType.PlainText)