Novacode DocX库,保存文档时出现参数异常
本文关键字:参数 异常 文档 DocX 保存 Novacode | 更新日期: 2023-09-27 17:57:35
我的程序所做的是从一个文档中获取一些文本,并替换另一个文档(.docx)中的标记。
对于大多数文档来说,这绝对是完美的,但有时我会遇到Argument Exception:
'♂'十六进制值0x0b不是有效字符
"十六进制值0x07不是有效的字符
现在,我查看了这些异常发生在(主要是.docs)中的文档(很抱歉不能在这里分享这些,公司机密等),但我在这些文档中找不到引用的字符。我还查看了提取的文本,在其中找不到任何恶意字符,文档标题中也没有任何恶意字符(我去掉了所有非字母数字字符)。
文档期间也会出现异常。SaveAs()函数。
有人知道这里可能有什么问题吗?如果我发布我的代码,我会很乐意的。
我能够自己解决这个问题,我只需要将本应进入最终文件的文本替换掉所有错误的字符。
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);