Содержание Word.Document -> Редактирование текста - PullRequest
0 голосов
/ 22 июля 2011

В настоящее время у меня есть проблема при попытке изменить текст внутри моего Document.Contents.Text

Следующий код не работает:

object findingFile = m_TempFileDirectory.FullName + "\\" + formField.Name + ".rtf";
Document tempDoc = wordApp.Documents.Open(ref findingFile, ref m_Missing, 
  ref m_Missing, ref m_Missing, ref m_Missing, ref m_Missing, ref m_Missing, 
  ref m_Missing, ref m_Missing, ref m_Missing, ref m_Missing, ref m_Missing, 
  ref m_Missing, ref m_Missing, ref m_Missing, ref m_Missing);
tempDoc.Content.Select();
String st = tempDoc.Content.Text;
st = st.Replace("\r", "");
tempDoc.Content.Text = st;
tempDoc.Content.Copy();
tempDoc.Close(ref m_DiscardChanges, ref m_Missing, ref m_Missing);
r.Paste();

Мой результат все еще (япытаюсь удалить \ r для новой строки)

Lipid level: not specified\r

Ответы [ 2 ]

1 голос
/ 22 июля 2011

EDIT

Я ошибся, пытаясь избежать \ r, потому что, конечно, вы заменяете фактический управляющий символ (\ r), а не литерал "\ r" '. К сожалению.

Вы правы в своем комментарии, когда вы делаете tempDoc.Content.Text = st; добавляется новый перевод строки (\ r). Вам всегда нужно будет удалить или заменить то время, когда вы действительно используете значение.

Похоже, вы хотите скопировать текст в буфер обмена? Если так, то почему бы просто не сделать это из строки (st):

        String st = tempDoc.Content.Text.Replace("\r", "\n");
        System.Windows.Forms.Clipboard.SetText(st);

Я также заменил перевод строки на возврат каретки (\ n), потому что если вы этого не сделаете, в тексте вообще не будет перевода строки (проблема, если у вас несколько строк текста).

(Оригинальный ответ удален)

0 голосов
/ 22 июля 2011

Попробуйте:

st = st.Replace("\n", "").Replace("\r", "").Replace("\n\r", "");

Примечание стороны:

\n Используется как символ новой строки в Unix.

\r Используется как символ новой строки в Mac.

\n\r Используется как символ новой строки в Windows.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...