使用Word API(非Openxml)打开Word文档简单示例(必须安装Word)

  1. 首先需要引入参照Microsoft.Office.Interop.Word
  2. 代码示例如下:
public void OpenWord()
{
// Word应用对象
Word.Application wdApp = null;
// Word文档对象
Word.Document wdDoc = null; // Word路径
object oWdPath = "XXXXXXXXXXXXXX";
// Word设定:缺损项
object oMissing = System.Reflection.Missing.Value;
// Word设定:不保存
object doNotSaveChanges = Microsoft.Office.Interop.Word.WdSaveOptions.wdDoNotSaveChanges; try
{
// 新建Word应用
wdApp = new Word.Application();
// 设置Word应用为可见
wdApp.Visible = true;
// 打开Word文档
wdDoc = wdApp.Documents.Open(ref oWdPath,
ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing,
ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing,
ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing);
}
finally
{
#pragma warning disable
// 关闭Word文档
if (wdDoc != null) { wdDoc.Close(); wdDoc = null; }
// 关闭Word应用
if (wdApp != null) { wdApp.Quit(ref doNotSaveChanges, ref oMissing, ref oMissing); wdApp = null; }
#pragma warning disable
GC.Collect();
}
}

注意:

该方法必须安装Word,运行速度可能比较慢。

如只是要取得Word里面的数据,且速度要求比较高,推荐使用Openxml,而且不需要安装Word。

--------------------------------------------------------------------------------------------------------------------------------------------------------------------

C#打开WORD文档内容并显示

摘自:http://www.cnblogs.com/host-2008/archive/2008/06/04/1213975.html

ASP.NET编程中常用到的27个函数集

1、DateTime 数字型

System.DateTime currentTime=new System.DateTime();         1.1 取当前年月日时分秒 currentTime=System.DateTime.Now;         1.2 取当前年 int 年=currentTime.Year;         1.3 取当前月 int 月=currentTime.Month;         1.4 取当前日 int 日=currentTime.Day;         1.5 取当前时 int 时=currentTime.Hour;         1.6 取当前分 int 分=currentTime.Minute;         1.7 取当前秒 int 秒=currentTime.Second;         1.8 取当前毫秒 int 毫秒=currentTime.Millisecond;         (变量可用中文)

2、Int32.Parse(变量) Int32.Parse("常量")         字符型转换 转为32位数字型

3、 变量.ToString()         字符型转换 转为字符串         12345.ToString("n"); //生成 12,345.00         12345.ToString("C"); //生成 ¥12,345.00         12345.ToString("e"); //生成 1.234500e+004         12345.ToString("f4"); //生成 12345.0000         12345.ToString("x"); //生成 3039 (16进制)         12345.ToString("p"); //生成 1,234,500.00%

4、变量.Length 数字型         取字串长度:         如: string str="中国";         int Len = str.Length ; //Len是自定义变量, str是求测的字串的变量名

5、System.Text.Encoding.Default.GetBytes(变量)         字码转换 转为比特码         如:byte[] bytStr = System.Text.Encoding.Default.GetBytes(str);         然后可得到比特长度:         len = bytStr.Length;

6、System.Text.StringBuilder("")         字符串相加,(+号是不是也一样?)         如:System.Text.StringBuilder sb = new System.Text.StringBuilder("");         sb.Append("中华");         sb.Append("人民");         sb.Append("共和国");

7、变量.Substring(参数1,参数2);         截取字串的一部分,参数1为左起始位数,参数2为截取几位。         如:string s1 = str.Substring(0,2);

8、String user_IP=Request.ServerVariables["REMOTE_ADDR"].ToString();         取远程用户IP地址

9、穿过代理服务器取远程用户真实IP地址:         if(Request.ServerVariables["HTTP_VIA"]!=null){         string user_IP=Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();         }else{         string user_IP=Request.ServerVariables["REMOTE_ADDR"].ToString();         }

10、 Session["变量"];         存取Session值;         如,赋值: Session["username"]="小布什";

取值: Object objName=Session["username"];         String strName=objName.ToString();         清空: Session.RemoveAll();

11、String str=Request.QueryString["变量"];         用超链接传送变量。         如在任一页中建超链接:<a href=Edit.ASPx?fbid=23>点击</a>         在Edit.aspx页中取值:String str=Request.QueryString["fdid"];

12、DOC对象.CreateElement("新建节点名");         创建XML文档新节点

13、父节点.AppendChild(子节点);         将新建的子节点加到XML文档父节点下

14、 父节点.RemoveChild(节点);         删除节点

15、Response         Response.Write("字串");         Response.Write(变量);         向页面输出。

Response.Redirect("URL地址");         跳转到URL指定的页面

16、char.IsWhiteSpce(字串变量,位数)——逻辑型         查指定位置是否空字符;         如:         string str="中国 人民";         Response.Write(char.IsWhiteSpace(str,2)); //结果为:True, 第一个字符是0位,2是第三个字符。

17、char.IsPunctuation('字符') --逻辑型         查字符是否是标点符号         如:Response.Write(char.IsPunctuation('A')); //返回:False

18、(int)'字符'

把字符转为数字,查代码点,注意是单引号。         如:         Response.Write((int)'中'); //结果为中字的代码:20013

19、(char)代码         把数字转为字符,查代码代表的字符。         如:         Response.Write((char)22269); //返回“国”字。

20、 Trim()         清除字串前后空格

21 、字串变量.Replace("子字串","替换为")         字串替换         如:         string str="中国";         str=str.Replace("国","央"); //将国字换为央字         Response.Write(str); //输出结果为“中央”

再如:(这个非常实用)

string str="这是<script>脚本";         str=str.Replace("<","<font><</font>"); //将左尖括号替换为<font> 与 < 与 </font> (或换为<,但估计经XML存诸后,再提出仍会还原)         Response.Write(str); //显示为:“这是<script>脚本”

如果不替换,<script>将不显示,如果是一段脚本,将运行;而替换后,脚本将不运行。         这段代码的价值在于:你可以让一个文本中的所有Html标签失效,全部显示出来,保护你的具有交互性的站点。         具体实现:将你的表单提交按钮脚本加上下面代码:         string strSubmit=label1.Text; //label1是你让用户提交数据的控件ID。         strSubmit=strSubmit.Replace("<","<font><</font>");         然后保存或输出strSubmit。         用此方法还可以简单实现UBB代码。

22、Math.Max(i,j)         取i与j中的最大值         如 int x=Math.Max(5,10); // x将取值 10

加一点吧 23、字串对比......         加一点吧

23、字串对比一般都用: if(str1==str2){ } , 但还有别的方法:

(1)、         string str1; str2         //语法: str1.EndsWith(str2); __检测字串str1是否以字串str2结尾,返回布尔值.如:         if(str1.EndsWith(str2)){ Response.Write("字串str1是以"+str2+"结束的"); }

(2)、         //语法:str1.Equals(str2); __检测字串str1是否与字串str2相等,返回布尔值,用法同上.

(3)、         //语法 Equals(str1,str2); __检测字串str1是否与字串str2相等,返回布尔值,用法同上.

24、IndexOf() 、LastIndexOf()         查找字串中指定字符或字串首次(最后一次)出现的位置,返回索引值,如:         str1.IndexOf("字"); //查找“字”在str1中的索引值(位置)         str1.IndexOf("字串");//查找“字串”的第一个字符在str1中的索引值(位置)         str1.IndexOf("字串",3,2);//从str1第4个字符起,查找2个字符,查找“字串”的第一个字符在str1中的索引值(位置)

25、Insert()         在字串中指定索引位插入指定字符。如:         str1.Insert(1,"字");在str1的第二个字符处插入“字”,如果str1="中国",插入后为“中字国”;

26、PadLeft()、PadRight()         在字串左(或右)加空格或指定char字符,使字串达到指定长度,如:         <%         string str1="中国人";         str1=str1.PadLeft(10,'1'); //无第二参数为加空格         Response.Write(str1); //结果为“1111111中国人” , 字串长为10         %>

27、Remove()         从指定位置开始删除指定数的字符         字串对比一般都用: if(str1==str2){ }

------

使用Word API打开Word文档 ASP.NET编程中常用到的27个函数集的更多相关文章

  1. word文档重新打开后文档结构错乱

    word文档重新打开后文档结构错乱,然后通过如下方法解决了. OFFICE2007及以上.        在打开word的时候左下角会有提示word自动更新文档样式,按esc键取消,然后在大纲模式下任 ...

  2. 关于ASP.NET Web Api的HelpPage文档注释问题

    关于ASP.NET Web Api的HelpPage文档注释问题 以前我用微软的HelpPage来自动生成的webAPI帮助文档.在使用了一段时间后发现只能显示Controller上面写的注释文档内容 ...

  3. asp.net core web api 生成 swagger 文档

    asp.net core web api 生成 swagger 文档 Intro 在前后端分离的开发模式下,文档就显得比较重要,哪个接口要传哪些参数,如果一两个接口还好,口头上直接沟通好就可以了,如果 ...

  4. 【开源】.Net Api开放接口文档网站

    开源地址:http://git.oschina.net/chejiangyi/ApiView 开源QQ群: .net 开源基础服务  238543768 ApiView .net api的接口文档查看 ...

  5. 怎么用ABBYY打开PDF文档

    我们日常工作中接触的文档大多都是PDF格式的,这种格式的文件需要借助工具才能打开,大家最熟悉的无非就是Adobe了,但你知道吗?除了Adobe,OCR文字识别软件也可以打开PDF文档,比如ABBYY ...

  6. 使用.NET 6开发TodoList应用(27)——实现API的Swagger文档化

    系列导航及源代码 使用.NET 6开发TodoList应用文章索引 需求 在日常开发中,我们需要给前端提供文档化的API接口定义,甚至需要模拟架设一个fake服务用来调试接口字段.或者对于后端开发人员 ...

  7. MVC自定定义扩展点之ActionNameSelectorAttribute+ActionFilterAttribute 在浏览器中打开pdf文档

    仅仅演示 了ASP.MVC 5 下为了在在浏览器中打开pdf文档的实现方式之一,借此理解下自定义ActionNameSelectorAttribute+ActionFilterAttribute 类的 ...

  8. CentOS6.4下使用默认的文档查看器打开PDF文档乱码的解决方案

     最近在CentOS6.4下使用其默认的文档查看器打开PDF文档时出现乱码的方块,有两种方法可以解决.    方法一:修改/etc/fonts/conf.d/49-sansserif.conf文件,如 ...

  9. 不启动VS2013,直接打开帮助文档的方法

    在使用VS2013做开发的时候,当我们需要查询一个知识点时,直接按"F1"键就可以打开配套的帮助文档.如果在没有打开VS2013的情况想查看它的帮助文档,我们应该怎么办呢?我们能否 ...

随机推荐

  1. POJ 3279 Fliptile[二进制状压DP]

    题目链接[http://poj.org/problem?id=3279] 题意:给出一个大小为M*N(1 ≤ M ≤ 15; 1 ≤ N ≤ 15) 的图,图中每个格子代表一个灯泡,mp[i][j] ...

  2. javascript中函数的call,apply及bind方法

    call 方法调用一个对象的一个方法,以另一个对象替换当前对象.call([thisObj[,arg1[, arg2[,  [,.argN]]]]])参数thisObj可选项.将被用作当前对象的对象. ...

  3. HDU - 2586 How far away ?(LCA模板题)

    HDU - 2586 How far away ? Time Limit: 1000MS   Memory Limit: 32768KB   64bit IO Format: %I64d & ...

  4. jspl零散知识点

    1.  读取配置文件. index.jsp: <body> <% String charset=config.getInitParameter("charset" ...

  5. Chapter 1 First Sight——34

    "Was that the boy I sat next to in Biology?" I asked artlessly. 你是生物课坐在我旁边的男生吗?我天真烂漫的问道. & ...

  6. cmstop框架中的js设计content.js

    控制cmstop框架中action的js 内容模块 找出当前页面的js的思路01先找显示页面的当前文件.在页面文件中-->找(编辑,删除)按钮-->找获取这个按钮的js选择器 02看加载的 ...

  7. Django:之传递数据给JS、Ajax和Ajax CSRF认证

    Django传递数据给JS 有时候我们想把一个list或者dict传递给javascript,处理后显示到网页上,比如要用js进行可视化到数据. 请注意:如果是不处理,直接显示在网页上,用Django ...

  8. app调用支付宝支付 笔记

    1.提交各种申请 2.通过后进入支付宝开放平台  --> 管理中心 -->创建应用  --> 填写相关信息 提交等待审核通过(1,2天)   3.下载集成包(https://doc. ...

  9. listview解决滑动条目的时候背景变为黑色的问题

    方式一:java代码: listView.setCacheColorHint(0); 方式二:布局文件 <ListView android:id="@+id/listView1&quo ...

  10. POJ 3597 种类数 数学+递推

    http://poj.org/problem?id=3597 题目大意:把一个正多边形分成数个三角形或者四边形,问有多少种方案. 思路:http://www.cnblogs.com/Ritchie/p ...