Novacode DocX Library,保存文档时的参数异常

时间:2016-07-19 13:28:05

标签: c# docx argumentexception novacode-docx

我的程序所做的是从一个文档中获取一些文本并替换另一个文档中的标记(.docx)。

对于大多数文档来说,这绝对完美无缺,但有时我遇到了一个参数异常:

'♂'十六进制值0x0b不是有效字符
' '十六进制值0x07不是有效字符

现在我查看了这些例外发生的文件(主要是.docs)(抱歉不能在这里分享这些,公司机密等),我无法在任何地方找到引用的字符。我也查看了提取的文本,但在那里找不到任何恶意字符,文档标题中也没有(我删除了所有非字母数字字符)。

在document.SaveAs()函数期间也会发生异常。

有谁知道问题可能在这里,如果我发布我的代码,我会很乐意这样做。

1 个答案:

答案 0 :(得分:0)

我能够自己解决这个问题,我只是把应该进入最终文件的文本替换掉了所有错误的字符。

doc.ActiveWindow.Selection.WholeStory();
text.Append(doc.ActiveWindow.Selection.Text);
var regex = "[\x00-\x08\x0B\x0C\x0E-\x1F]";
var cleanedText = Regex.Replace(text.ToString(), regex, String.Empty, RegexOptions.Compiled);