2014-10-18 4 views
4

Я новичок в программировании и нуждаюсь в некоторой помощи.Найти и заменить текст без потери форматирования

Я использую VB 2010 Express, и я пытаюсь читать .rtf файл в строку, а затем найти и заменить текст внутри него и, наконец, выход в виде нового файла

мне удалось сделать это с приведенным ниже кодом, НО оно теряет форматирование возврата каретки, а выход все в одной строке?

спасибо за любую помощь Джеймс

Private Sub Button16_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button16.Click 

    Dim fileReader As String 
    fileReader = My.Computer.FileSystem.ReadAllText("C:\Testing\Reports\test2.rtf") 

    fileReader = fileReader.Replace("@@[email protected]@", RichTextBox1.Text) 

    Dim StreamW As New IO.StreamWriter("C:\Testing\Reports\test3.rtf") 

    StreamW.Write(fileReader) 
    StreamW.Close() 

ответ

2
RichTextBox1.Text 

оленья кожа держать информацию о форматировании. попробуйте вместо этого:

RichTextBox1.Rtf 

также функция ReadAlltext удаляет cr, который отсутствует. попробуйте ReadToEnd вместо

+0

спасибо за помощь, я попробовал RichTextBox1.SelectedRtf, который работал, если был выбран весь текст, а затем наткнулся на RichTextBox1.Rtf, это работает, не выбирая текст. Знаете ли вы, что я мог бы использовать, если бы я заменил RichTextBox на TextBox? –

+0

Я не чувствую, что получаю то, что ты хочешь сделать. насколько я знаю синтаксис rtf, вы можете заменить текст, не повредив существующее форматирование. в противном случае вам нужно добавить форматирование самостоятельно. я googled и нашел это: http://www.biblioscape.com/rtf15_spec.htm , если это вам не поможет - пожалуйста, дайте мне более подробную информацию о том, что вы хотите сделать. – Index

Смежные вопросы