RTF文件内容替换问题

问题描述

我有一个合同的模板“保证书.rtf”,内容中有{0},{1}等动态标志。我写了一个替换方法(如下),可是执行到excute时老是提示错误“占位程序接收到错误数据。(异常来自HRESULT:0x800706F7)”///<summary>///Word文本替换///</summary>///<paramname="doc">文档</param>///<paramname="args">要替换的内容</param>publicvoidReplaceWord(Documentdoc,paramsobject[]args){try{objectfirst=0;objectlast=doc.Characters.Count;Rangerange=doc.Range(reffirst,reflast);Microsoft.Office.Interop.Word.Findfinder=range.Find;finder.ClearFormatting();objectmissingValue=Type.Missing;//objectmissingValue=System.Reflection.Missing.Value;//这个东西找了好久,不像操作Excel,用Type.mising还不行.objectreplaceArea=Microsoft.Office.Interop.Word.WdReplace.wdReplaceAll;inti=0;foreach(objectiteminargs){objectfindStr="{"+i+"}";objectreplaceStr=item;//替换内容finder.Execute(reffindStr,refmissingValue,refmissingValue,refmissingValue,refmissingValue,refmissingValue,refmissingValue,refmissingValue,refmissingValue,refreplaceStr,refreplaceArea,refmissingValue,refmissingValue,refmissingValue,refmissingValue);i++;}}catch(Exceptionex){MessageBox.Show(ex.Message,"提示ReplaceWord",MessageBoxButtons.OK,MessageBoxIcon.Error);return;}}

问各位大哥帮下忙,先谢了!或者有没有其它方法可以来实现这个操作的。

解决方案

解决方案二:
用反射的方式调用Execute,暂时没有其他方法。如果是C#4,dynamic不行,但InvokeMethod可以原理我也还没弄懂,期待专家解答。
解决方案三:

解决方案四:
如果就是想替换内容的话,扔到richtextbox里面用自带的方法就可以处理了。richTextBox1.Text="abcdef";richTextBox1.Select(richTextBox1.Text.IndexOf("cd"),2);richTextBox1.SelectedText="xxxx";
解决方案五:
"{{+i.tostring()+"}}",试试
解决方案六:
我也碰到这个问题word2003是对的,在word2007下面就有这个问题了,该怎么解决
解决方案七:
偶也遇到了,楼上各位大侠有没有解决的,请教一下

时间: 2024-10-21 17:35:27

RTF文件内容替换问题的相关文章

Unix sed编辑器如何替换文件内容

本节将使用sample1.txt文件作为示例,文件内容如下,都是些水果..: apple orange banana pappaya 1.向每一行的开头添加内容,这里我们添加"Fruit:" $ sed 's/^/Fruit: /' sample1.txt Fruit: apple Fruit: orange Fruit: banana Fruit: pappaya 解析:s代表substitution,也就是替换,s之后是要替换/匹配的内容,斜线/用来分隔s以及要替换的原始内容还有要

java 如何替换文件内容 .doc或.rtf或.docx,求实现思路

问题描述 java 如何替换文件内容 .doc或.rtf或.docx,求实现思路 java 如何替换文件内容 .doc或.rtf或.docx,求实现思路 解决方案 用poi这个库去读取,然后程序中替换后写回. 解决方案二: 如果不想用专门处理的jar 包,可以写个模版,模版对要替换的字采用特殊标识符,然后读流,替换掉. 解决方案三: 用poi这个库去读取,然后程序中替换后写回.同时使用正则表达式

python实现的用于搜索文件并进行内容替换的类实例

  本文实例讲述了python实现的用于搜索文件并进行内容替换的类.分享给大家供大家参考.具体实现方法如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 6

linux下批量替换文件内容的方法

  对于单个文件,使用sed命令很容易做到.如果需要替换某个指定文件夹下所有文件,借助grep和sed组合成一条命令也可以轻松搞定. grep命令可以查找单个文件或文件夹下文件中的内容,使用参数"r"或"-R"可以递归查找指定文件夹下的所有文件;参数"l"可以让grep输出包含指定字符串的文件名,首次匹配成功后立刻停止对同文件的查询.如果不使用"l",grep查询单个文件时输出文件中所有包含指定字符串的行,对文件夹查询时则按照

linux下perl,sed,shell批量替换文件内容

  方法1: 这两天在构建一个应用的使用用到了maven,由于project很大,足足有700多个 pom.xml文件,更郁闷的是在很多pom.xml文件里都单独指定了资源库的url,我需要把这些资源库的url统一指定到nexus本地中央库. 手 工一个个改文件配置有点不太实际,所以google了一下,找到批量替换文件内容的好方法,命令结构如下: find -name '要查找的文件名' | xargs perl -pi -e 's|被替换的字符串|替换后的字符串|g'下面这个例子就是将当前目录

replace-利用java io逐行操作文件并替换内容

问题描述 利用java io逐行操作文件并替换内容 A文件: as1 dfg1 hjkl1 逐行读取A文件的内容,将1替换成 一 后将替换后的内容写到B文件中 解决方案 BufferedReader readBuffer = new BufferedReader(new FileReader( new File("D:/aaaa.txt"))); BufferedWriter write = new BufferedWriter(new FileWriter(new File(&quo

【NLP】Tika 文本预处理:抽取各种格式文件内容

1 Tika介绍 Tika概念 Tika是一个内容分析工具,自带全面的parser工具类,能解析基本所有常见格式的文件,得到文件的metadata,content等内容,返回格式化信息.总的来说可以作为一个通用的解析工具.特别对于搜索引擎的数据抓去和处理步骤有重要意义.Tika是Apache的Lucene项目下面的子项目,在lucene的应用中可以使用tika获取大批量文档中的内容来建立索引,非常方便,也很容易使用.Apache Tika toolkit可以自动检测各种文档(如word,ppt,

php zip文件内容比较类

php zip 文件比较类,比较两个zip文件的内容,返回新增,删除,及相同的文件列表.暂时只支持单层. 需求:上传一个zip文件,zip内有很多图片文件.需要对图片文件进行一系列很耗时的处理.当用户再更新zip文件时.判断zip内文件是否一致,只处理不同的文件.这样可以节省资源与时间,因此需要编写一个能够比较zip内文件的类. ZipCompare.class.php <?php /** Zip Compare class 比较两个zip文件的内容,返回新增,删除,及相同的文件列表,暂时只支持

WORD/EXCEL内容替换

最近,在做一个小项目时,需要用到Word/Excel(目前只针对Office2003)文档中内容的替换,在网上搜寻了一番,找到了一些解决方法,自己再整理了一下,记录出来与大家共享. 1.在项目的引用中添加WORD和EXCEL的COM引用:Microsoft.Word 11.0 Object Library和Microsoft.Excel 11.0 Object Library: 2.在文件的USING部分加入以下命名空间: using Microsoft.Office.Core; using M