新手飞过。。。就是要读取一个doc文件到框内的

问题描述

就是读不出来啊。。。。。word控件导入的问题usingSystem;usingSystem.Collections.Generic;usingSystem.Text;usingAxDSOFramer;usingSystem.IO;namespaceRMS_Reader.Reader{classcOfficeReader:iReader{privateAxFramerControloffice=newAxFramerControl();privatebyte[]officeStream=null;privateFileInfoinfo=newFileInfo();//文档信息FileStreamfs;#regioniDocumentsMemberspublicSystem.Windows.Forms.ControlGetReaderControl(){returnoffice;}publicboolInitReader(){//office.Toolbars=false;office.MenuAccelerators=false;office.Menubar=false;office.Titlebar=false;returntrue;}publicboolOpenFile(stringfilePath){//加载文件try{office.Open(filePath);office.Activate();}catch{returnfalse;}//获取文档信息info.fileType=System.IO.Path.GetExtension(filePath);info.filePath=filePath;returntrue;}publicboolSave(){try{office.Save();}catch{returnfalse;}returntrue;}publicvoidSaveAs(stringfilePath){GetFileContent();//打开文件FileStreamofs=newFileStream(filePath,FileMode.Create);//保存文件ofs.Seek(0,SeekOrigin.Begin);//Movefilepointertobeginningoffile.ofs.Write(officeStream,0,officeStream.Length);ofs.Close();}publicvoidPrint(){thrownewNotImplementedException();}publicvoidClose(){if(office!=null){//尝试关闭officetry{office.Save();office.Close();}catch{}}if(fs!=null)fs.Close();}publicFileInfoGetFileInfo(){returninfo;}publicbyte[]GetFileContent(){//关闭OfficeClose();//打开文档,获取内容fs=newFileStream(info.filePath,FileMode.Open);//文件流//读取文件内容if(null==officeStream)officeStream=newbyte[fs.Length];fs.Read(officeStream,0,(int)fs.Length);fs.Close();//打开OfficeOpenFile(info.filePath);returnofficeStream;}publicvoidSetReaderProperties(uintproperties){//thrownewNotImplementedException();}#endregion}}求各位大哥救救小弟。。。。。。。。。。。诚心拜拜

解决方案

解决方案二:
用這個啊
解决方案三:
前提:导入COM库:Microsoftword11.0ObjectLibrary.引用里面就增加了:创建新WordobjectoMissing=System.Reflection.Missing.Value;Word._ApplicationoWord;Word._DocumentoDoc;oWord=newWord.Application();oWord.Visible=true;oDoc=oWord.Documents.Add(refoMissing,refoMissing,refoMissing,refoMissing);打开文档:objectoMissing=System.Reflection.Missing.Value;Word._ApplicationoWord;Word._DocumentoDoc;oWord=newWord.Application();oWord.Visible=true;objectfileName=@"E:CCCXCXXTestDoc.doc";oDoc=oWord.Documents.Open(reffileName,refoMissing,refoMissing,refoMissing,refoMissing,refoMissing,refoMissing,refoMissing,refoMissing,refoMissing,refoMissing,refoMissing,refoMissing,refoMissing,refoMissing,refoMissing);导入模板objectoMissing=System.Reflection.Missing.Value;Word._ApplicationoWord;Word._DocumentoDoc;oWord=newWord.Application();oWord.Visible=true;objectfileName=@"E:XXXCCXTest.doc";oDoc=oWord.Documents.Add(reffileName,refoMissing,refoMissing,refoMissing);.添加新表objectoMissing=System.Reflection.Missing.Value;Word._ApplicationoWord;Word._DocumentoDoc;oWord=newWord.Application();oWord.Visible=true;oDoc=oWord.Documents.Add(refoMissing,refoMissing,refoMissing,refoMissing);objectstart=0;objectend=0;Word.RangetableLocation=oDoc.Range(refstart,refend);oDoc.Tables.Add(tableLocation,3,4,refoMissing,refoMissing);.表插入行objectoMissing=System.Reflection.Missing.Value;Word._ApplicationoWord;Word._DocumentoDoc;oWord=newWord.Application();oWord.Visible=true;oDoc=oWord.Documents.Add(refoMissing,refoMissing,refoMissing,refoMissing);objectstart=0;objectend=0;Word.RangetableLocation=oDoc.Range(refstart,refend);oDoc.Tables.Add(tableLocation,3,4,refoMissing,refoMissing);Word.TablenewTable=oDoc.Tables[1];objectbeforeRow=newTable.Rows[1];newTable.Rows.Add(refbeforeRow);.单元格合并objectoMissing=System.Reflection.Missing.Value;Word._ApplicationoWord;Word._DocumentoDoc;oWord=newWord.Application();oWord.Visible=true;oDoc=oWord.Documents.Add(refoMissing,refoMissing,refoMissing,refoMissing);objectstart=0;objectend=0;Word.RangetableLocation=oDoc.Range(refstart,refend);oDoc.Tables.Add(tableLocation,3,4,refoMissing,refoMissing);Word.TablenewTable=oDoc.Tables[1];objectbeforeRow=newTable.Rows[1];newTable.Rows.Add(refbeforeRow);Word.Cellcell=newTable.Cell(1,1);cell.Merge(newTable.Cell(1,2));.单元格分离objectoMissing=System.Reflection.Missing.Value;Word._ApplicationoWord;Word._DocumentoDoc;oWord=newWord.Application();oWord.Visible=true;oDoc=oWord.Documents.Add(refoMissing,refoMissing,refoMissing);objectstart=0;objectend=0;Word.RangetableLocation=oDoc.Range(refstart,refend);oDoc.Tables.Add(tableLocation,3,4,refoMissing,refoMissing);Word.TablenewTable=oDoc.Tables[1];objectbeforeRow=newTable.Rows[1];newTable.Rows.Add(refbeforeRow);Word.Cellcell=newTable.Cell(1,1);cell.Merge(newTable.Cell(1,2));objectRownum=2;objectColumnnum=2;cell.Split(refRownum,refColumnnum);通过段落控制插入objectoMissing=System.Reflection.Missing.Value;objectoEndOfDoc="endofdoc";/**//*endofdocisapredefinedbookmark*///StartWordandcreateanewdocument.Word._ApplicationoWord;Word._DocumentoDoc;oWord=newWord.Application();oWord.Visible=true;oDoc=oWord.Documents.Add(refoMissing,refoMissing,refoMissing,refoMissing);//Insertaparagraphatthebeginningofthedocument.Word.ParagraphoPara1;oPara1=oDoc.Content.Paragraphs.Add(refoMissing);oPara1.Range.Text="Heading1";oPara1.Range.Font.Bold=1;oPara1.Format.SpaceAfter=24;//24ptspacingafterparagraph.oPara1.Range.InsertParagraphAfter();赞同18|评论(3)
解决方案四:
Microsoftword11.0ObjectLibrary不是對應各個版本office,還是用我說的那個吧,,,,,,,呵呵呵呵呵額呵呵呵呵
解决方案五:
这个控件能直接返回control类吗?。。。。我比较菜。。。还有大哥你那个下不到呀
解决方案六:
引用3楼的回复:

Microsoftword11.0ObjectLibrary不是對應各個版本office,還是用我說的那個吧,,,,,,,呵呵呵呵呵額呵呵呵呵

这个控件能直接返回control类吗?。。。。我比较菜。。。还有大哥你那个下不到呀

时间: 2024-09-20 14:36:34

新手飞过。。。就是要读取一个doc文件到框内的的相关文章

新手 请求帮忙解答-请问下,如何用Java读取 一个txt文件(txt文件是一个数字矩阵)``````

问题描述 请问下,如何用Java读取 一个txt文件(txt文件是一个数字矩阵)`````` 请问下,如何用Java读取 一个txt文件(txt文件是一个数字矩阵).把每列的数据合成一大列输出,意思就是把第二列的数据放在第一列的末尾,第三列放在第二列的末尾````` 多谢了. 解决方案 太麻烦 说下思路,你看一下行不行, 1>.把每一行都放到一个数组里 ,可以用缓冲流读取一行, 2>.然后按矩阵的分割部分的字符 来分割这一行的字符串 拿到每个数组项, 3>.根据每个数组的下标,可以拿到

百度-请问php中去读取一个php文件然后显示在前台,怎么做啊?

问题描述 请问php中去读取一个php文件然后显示在前台,怎么做啊? 如题,百度说用include.但是没有demo我不知道如何写,谁有demo或者例子能分享一下吗? 解决方案 file get content函数试试 解决方案二: file get content函数试试

android-在浏览器中打开一个 .doc 文件储存在 SD 卡中

问题描述 在浏览器中打开一个 .doc 文件储存在 SD 卡中 我在 SD 卡中储存了一个 .doc 文件,我需要使用浏览器来打开: Intent intent = new Intent(); File file = new File("/sdcard/ValidateLibrary.doc"); intent.setDataAndType( Uri.fromFile(file),"text/html"); 在 manifest 文件中我创建了: <activ

遍历-如何读取一个大文件夹中全部xml文件。将其路径放入哪种容器

问题描述 如何读取一个大文件夹中全部xml文件.将其路径放入哪种容器 现在在一个大的文件夹中,包含了若干个子文件夹,每个文件夹可能包含N个xml,txt等其他文件.现在想通过遍历把这个大的文件夹中所有的xml文件保存到一个容器中.1.请问用什么容器比较好vector?2.最好能来个详细的例子 让鄙人学习下 解决方案 你这种方法用递归比较好,至于容器,你说的是将找到的文件的路径存放起来吧.那个就随便都可以.用List吧. public void findFileByEndStr(String di

代码-使用C语言1. 读取一个.C文件,删除该文件中所有的注释语句

问题描述 使用C语言1. 读取一个.C文件,删除该文件中所有的注释语句 读取一个.C文件,删除该文件中所有的注释语句.然后写入到新的.C文件里. 要求: 删除注释语句功能采用动态链接库形式 在功能实现的基础上: --单元测试要足够充分 --要通过所有的MISRA C的检查 --代码要符合代码规范. 解决方案 #include int main() { FILE *fp,*fp1; char str[99]=""; int i=0; fp=fopen("test.c"

c++的问题-C++如何读取一个OMS文件,XML格式

问题描述 C++如何读取一个OMS文件,XML格式 C++如何读取一个OMS文件,XML格式,输出最好要有坐标,最后转化路型为速度 解决方案 设计一个xml格式的文件python如何读取xml格式的文件读取/书写Java的XML格式properties文件

c++读取csv文件并赋值-如何通过c ++读取一个csv文件并将数据赋值给两个一位数组?

问题描述 如何通过c ++读取一个csv文件并将数据赋值给两个一位数组? 0 912.43 1.24 912.42 1.54 901.92 21.94 883.97 24.17 881.51 29.94 876.45 37.4 870.57 49.62 861.14 59.06 853.05 75.99 843.75 90.84 833.95 118.8 818.25 135.2 804.9 152.35 791.55 157.68 791.15 174.6 770.35 190.92 766.

用ftpClient 在ftp上读取一个excel2007文件

问题描述 用ftpClient 在ftp上读取一个excel2007文件怎么实现wb = new XSSFWorkbook("FTP的路径怎么写"); 解决方案 //远程ftp读取读取 URL u=new URL(url);//这个是ftp文件完整地址 URLConnection urlconn=u.openConnection(); urlconn.getInputStream();//获得InputStream流. 下面可以针对不同的文件格式,对其进行不同的包装. //如excel

用vc++或java每隔一段时间读取一个日志文件(这是一个电话语音接听日志文件,文件内容在随时的增加)后提取有效数据到数据库中

问题描述 用vc++或java每隔一段时间读取一个日志文件(这是一个电话语音接听日志文件,文件内容在随时的增加)后提取有效数据到数据库中,怎么做到从上次读取文件的位置,也就是行数,开始下次的读取.大家知道,java和vc++是通过while()循环来读取文件,我当时的做法是记录上次while()的循环次数,下次读取时先空循环上次记录的行数,然后开始真正的读取文件.看看大伙有没有更好的办法. 解决方案 解决方案二:randomaccessfile+上次读取位置解决方案三:引用1楼inhibitor