2015-12-16 27 views
0

我有一個應用程序,我希望獲取單詞內容的第一行以自動設置文檔的標題以保存它。從句子範圍替換Word換行符不起作用

我這樣做:

if (WordApp != null) 
    { 
    FileName = WordApp.ActiveDocument.Name; 
    // get the content from the first available text as filename 
    if (IsNewRecord && WordApp.ActiveDocument.Sentences.Count > 0) 
     FileName = WordApp.ActiveDocument.Sentences.First.Text; 
    } 

儘管如此,它的工作原理,但FileName還包含LineBreak的第一句話。

所以,我想:

.Replace(Environment.NewLine, "") 

但什麼也沒做,既不"\n"

任何人都知道我做錯了什麼或如何達到我的要求?

+0

感謝您的反饋。實際上,\ v適用於換行符。現在我意識到我也必須關心這個段落。我仍然從段落中獲得「下一行」。 – YvesR

+0

把你的意見,以回答部分,所以我可以將其設置爲答案,你的提示幫助我解決問題。謝謝。 – YvesR

回答

1

A Word 換行符(例如,您可以使用Windows Word上的shift-Enter插入)由ASCII字符11表示,因此您可以在C#中查找該代碼。使用\ v。

A Word 段落標記由ASCII字符13表示,至少在Windows上可以使用\ r查找。

這些字符在Windows和Mac之間不會有所不同(並且我假設在線平臺)。即即使在基於Unix的系統上,段落標記始終爲13(CR),從不爲10(LF)。