我有一個要求,我希望用戶在Word文檔中鍵入一些字符串標記,以便它們可以通過C#應用程序替換爲某些值。所以說,我有一個文件爲每個圖像使用OpenXML SDK簡單替換Word文檔中的標記
現在使用SDK我可以讀取文檔如下:
private void InternalParseTags(WordprocessingDocument aDocumentToManipulate)
{
StringBuilder sbDocumentText = new StringBuilder();
using (StreamReader sr = new StreamReader(aDocumentToManipulate.MainDocumentPart.GetStream()))
{
sbDocumentText.Append(sr.ReadToEnd());
}
然而
,因爲這回來爲原始的XML我不能搜索對於標籤容易作爲底層XML看起來像:
<w:t><:</w:t></w:r><w:r w:rsidR="002E53FF" w:rsidRPr="000A794A"><w:t>Person.Meta.Age
(顯然,這並不是我會擁有控制權),而不是我所希望的NAMEL Y:
<w:t><: Person.Meta.Age
OR
<w:t><: Person.Meta.Age
所以我的問題是怎麼做的我居然對字符串本身的工作即
<: Person.Meta.Age :>
,仍然保留格式等,這樣,當我已經取代帶有值的令牌:
注意:第二個標記值的值加粗
是否需要迭代文檔元素或使用其他方法?所有的指針非常感謝。
類似的問題:http://stackoverflow.com/questions/28697701/openxml-tag-search/28701007#28701007 – 2015-03-03 05:50:03
你可以試試Eric White的Openxml powertools。檢查我的答案在這裏 - http://stackoverflow.com/a/15791797/860243 – Flowerking 2015-03-03 16:34:50