0

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

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

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

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

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

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

4

1 回答 1

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);
于 2016-07-20T06:06:09.513 回答