asp.net 上传word文档,读取word文档文本内容

liu1459542530 2012-10-24 02:25:07
string path = AppDomain.CurrentDomain.BaseDirectory + "App_Data\\log\\";
object fileName = path + "C" + CTM_NO + "-" + DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss-ff") + ".doc";
//实例化com
Microsoft.Office.Interop.Word.Application wordApp = new Microsoft.Office.Interop.Word.Application();
object fileobj = upFile;
object nullobj = System.Reflection.Missing.Value;
//打开指定文件(不同版本的COM参数个数有差异,一般而言除第一个外都用nullobj就行了)
// Microsoft.Office.Interop.Word.Document dd=
Microsoft.Office.Interop.Word.Document doc = wordApp.Documents.Open(ref fileobj, ref nullobj, ref nullobj, ref nullobj
, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj
, ref nullobj, ref nullobj, ref nullobj);
//取得doc文件中的文本
string outText = doc.Content.Text;
//关闭文件
doc.Close(ref nullobj, ref nullobj, ref nullobj);
//关闭com
wordApp.Quit(ref nullobj, ref nullobj, ref nullobj);

有颜色标注的地方报错“类型不匹配”
...全文
288 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
XBodhi. 2012-10-24
  • 打赏
  • 举报
回复



}
private void showPDF()
{
string filePath = Server.MapPath("") + ""; //要显示的文件

byte[] Data = GetData(filePath);

Response.ContentType = "application/pdf"; //文件类型(可以根据实际情况进行设定)

string strFileName="2009031824.PDF";

//inline (在线打开)
//attachment (下载)
Response.AddHeader("content-disposition","inline;filename="+strFileName+"");//设置文件是在线打开或下载以及文件的名称

Response.OutputStream.Write(Data, 0, Data.Length);
Response.End();
}


XBodhi. 2012-10-24
  • 打赏
  • 举报
回复
resopnes.write()这个方法有 指定 输出 contentType 的参数 。就可以了
liu1459542530 2012-10-24
  • 打赏
  • 举报
回复
还有一个东西不明白,就是如何将word文档转换成pdf格式的文件,从未做过,请教
liu1459542530 2012-10-24
  • 打赏
  • 举报
回复
恩,谢谢!我先试试看,等下不懂得还得请教各位大侠啊
wuyq11 2012-10-24
  • 打赏
  • 举报
回复
object docr=true;
Microsoft.Office.Interop.Word.Document doc = wordApp.Documents.Open(ref filepath, ref Missing.value, ref docr, ref Missing.value,...
Hauk 2012-10-24
  • 打赏
  • 举报
回复
wordApp.Documents.Open(ref fileobj

==》

wordApp.Documents.Open(ref fileName

第一个参数应为路径

其实其他参数你全都可以不传递。因为处理第一个参数其他都有默认值
(默认值就是System.Reflection.Missing.Value)。
象这样就可以了
wordApp.Documents.Open(ref fileName)

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧