Free Support Forum - aspose.com

替换字符不能包含换行符?

替换字符不能包含换行符?

@changmi,

请发送该场景的所有详细信息,包括源文件和代码。我们会在我们的环境中调查您的情况,并与您分享我们的调查结果。

代码部分:
if (listBody != null&&listBody.size()>0) {
if(listBody.size()==1){
HashMap datas = (HashMap) listBody.get(0);
// 遍历要替换的内容
Iterator keys = datas.keySet().iterator();
while (keys.hasNext()) {
String key = keys.next();
String value = String.valueOf(datas.get(key));
// 对显示值得修改
if (value == null) {
value = “”;
}
value = value.replace("\r\n", " “);
// 要求替换的内容是完全匹配时的替换
tempDoc.getRange().replace(”[" + reportIDs[iSheet] + key.toUpperCase() + “]”, value.replace("\n", “\r\n”), true, false);
}
}
}
报错部分:
java.lang.IllegalArgumentException: The replace string cannot contain special or break characters.
at com.aspose.words.zz0X.(Unknown Source)
at com.aspose.words.zz0X.(Unknown Source)
at com.aspose.words.Range.replace(Unknown Source)
at sh.sh.gfmis.fiscalbudget.redit.shanghai.profile.Export.PcExportExcel.writeDataFor(PcExportExcel.java:2011)
at sh.sh.gfmis.fiscalbudget.redit.shanghai.profile.Export.PcExportExcel.doExport(PcExportExcel.java:356)
at sh.sh.gfmis.fiscalbudget.redit.shanghai.action.PcExpExcelOperator$1.run(PcExpExcelOperator.java:194)

报错部分是说替换字符串不能包含特殊字符或中断字符,我这里替换的是从数据库中得到的文档内容,换行符很常见。

@changmi,

请邮寄并附上以下资源以供测试:

  • 简单输入Word文档
  • 突出显示您要替换的文本的屏幕截图
  • 预期的Word文档显示最终输出。 请使用MS Word创建此文档。

只要您准备好这些信息,我们将开始调查您的问题并为您提供更多信息。 谢谢你的合作。