资料一:适合读取并显示(简单而明了)

第一种方法:
   Response.ClearContent();

Response.ClearHeaders();
  Response.ContentType =
"Application/msword";
  string
s=Server.MapPath("C#语言参考.doc");
   Response.WriteFile("C#语言参考.doc");

Response.Write(s);
  Response.Flush();
    Response.Close();

第二种方法:

Response.ClearContent();

Response.ClearHeaders();

Response.ContentType  
=  
"Application/msword";

string  
strFilePath="";

strFilePath  
=Server.MapPath("C#语言参考.doc");
 
   FileStream  
fs  
=  
new  
FileStream(strFilePath,FileMode.OpenOrCreate,FileAccess.Read);

Response.WriteFile(strFilePath,0,fs.Length);

fs.Close();

第三种方法:

string path=Server.MapPath("C#语言参考.doc");

FileInfo
file=new FileInfo(path);
 
   FileStream
myfileStream=new
FileStream(path,FileMode.Open,FileAccess.Read);
 
   byte[]
filedata=new Byte[file.Length];

myfileStream.Read(filedata,0,(int)(file.Length));

myfileStream.Close();

Response.Clear();

Response.ContentType="application/msword";

Response.AddHeader("Content-Disposition","attachment;filename=文件名.doc");

Response.Flush();

Response.BinaryWrite(filedata);

Response.End();

资料二:适合上传WORD并显示与保存

//保存数据到当前客户端(可以传入一个要保存的文件名).
function os_SaveToLocal()
{
var _saveAs = "";
if(arguments.length > 0)
_saveAs = arguments[0] "";
else
_saveAs = os__localFile;

try
{
if(os__xmlFSO == null)
os__xmlFSO = new ActiveXObject("Scripting.FileSystemObject");

}
catch(e){window.alert(e);}
}

//Word转化为Html文件
function WorcChangeHtml()
{
var os_xmlFSO;
//获得上传控件对象
var objUpFile = window.document.Form1.updFile;
//获得客户端Word文件路径和文件
var UpFilue = window.document.Form1.updFile.value;
if(os__xmlFSO == null)
os__xmlFSO = new ActiveXObject("Scripting.FileSystemObject");

try
{
if(window.document.Form1.updFile.value == "")
{
alert('请选择对应的Word文件');
objUpFile.focus();
}
else if(UpFilue.indexOf(".doc") == -1)
{
alert('您选择的不是Word文件 \r\n请选择正确的Word文件');
objUpFile.focus();
}
else if(!os__xmlFSO.FileExists(objUpFile.value))
{
alert('对应的Word文件不存在');
objUpFile.focus();
}
else
{
var wdFormatHTML = 8;
var objWord = new ActiveXObject("Word.Application");
objWord.Application.Visible = false;
var objDoc = objWord.Documents.Open(UpFilue);
objDoc.SaveAs(os__localPath os__localFile, wdFormatHTML);
window.document.Form1.updFile.value = "";
objDoc.Close();
objWord.Quit();
var GetHtml = GetLine();
var iBeginIndex = GetHtml.indexOf("<body");
var iEndIndex =
GetHtml.lastIndexOf("</body>");

GetHtml =
GetHtml.substring(iBeginIndex,iEndIndex
7).replace("<body","<div");
GetHtml =
GetHtml.replace("</body>","</div>");

//将转化后的值赋给页面控件txtIdea的值,我为了将Word值保存进数据库所以用<input
type = "hidden" ..... 如果将Word内容显示可以考虑
window.document.Form1."你的显示控件ID".innerText = GetHtml;
window.document.Form1.txtIdea.value = GetHtml;
}
}
catch(e){window.alert(e);}
}

//读取文本文件
function GetLine()
{
var fso, txtfile, strValue;
var ForReading = 1, ForWriting = 2;
fso = new ActiveXObject("Scripting.FileSystemObject");
txtfile = fso.OpenTextFile(os__localPath os__localFile,
ForReading);
while(!txtfile.AtEndOfStream)
{
strValue = strValue txtfile.ReadLine();
}
txtfile.Close();
return(strValue);
}

</script>

注意页面上需要添加以下2个控件和对应的客户端事件

<input id="updFile"
type="file" style="BORDER-RIGHT: 1px solid; BORDER-TOP: 1px solid;
BORDER-LEFT: 1px solid; WIDTH: 77.46%; BORDER-BOTTOM: 1px solid;
HEIGHT: 26px"
size="71"> <input
style="BORDER-RIGHT: #999999 1px solid; BORDER-TOP: #999999 1px
solid; FONT-SIZE: 15pt; BORDER-LEFT: #999999 1px solid; WIDTH:
103px; BORDER-BOTTOM: #999999 1px solid; HEIGHT: 28px"
onclick="WorcChangeHtml()" runat="server" id="btnUpLoad"
type="submit" value="导入" name="btnUpLoad">
<textarea style="WIDTH: 15.25%; HEIGHT: 23px"
rows="50" cols="16" id="txtIdea"
runat="server">

其中txtIdea中的值就是客户端Word中的内容了,注意:需要调整IE的安全性设置,否则将无效.

asp.net 读取word 文档的方法的更多相关文章

  1. asp.net(C#)读取word 文档的方法

    第一种方法 Response.ClearContent(); Response.ClearHeaders(); Response.ContentType = "Application/msw ...

  2. asp.net生成word文档服务器配置

    一.asp.net生成word文档,布署到正式的服务器上就出现           错误:System.Runtime.InteropServices.COMException (0x800A1098 ...

  3. PHP网页导出Word文档的方法分离

    今天要探讨的是PHP网页导出Word文档的方法,使用其他语言的朋友也可以参考,因为原理是差不多的. 原理 一般,有2种方法可以导出doc文档,一种是使用com,并且作为php的一个扩展库安装到服务器上 ...

  4. C# 设置、删除、读取Word文档背景——基于Spire.Cloud.Word

    Spire.Cloud.Word.Sdk提供了接口SetBackgroudColor().SetBackgroudImage().DeleteBackground().GetBackgroudColo ...

  5. 利用POI工具读取word文档并将数据存储到sqlserver数据库中

    今天实现了利用POI工具读取word文档,并将数据存储到sql数据库中,代码如下: package word; import java.io.File; import java.io.FileInpu ...

  6. ASP.NET生成WORD文档,服务器部署注意事项

    网上转的,留查备用,我服务器装的office2007所以修改的是Microsoft Office word97 - 2003 文档这一个. ASP.NET生成WORD文档服务器部署注意事项 1.Asp ...

  7. C#实现通过模板自动创建Word文档的方法

    原文地址:http://www.jb51.net/article/55332.htm   本文实例讲述了C#实现通过模板自动创建Word文档的方法,是非常实用的技巧.分享给大家供大家参考.具体实现方法 ...

  8. C#读取Word文档内容代码

    首先要添加引用com组件:然后引用: using Word = Microsoft.Office.Interop.Word; 获取内容: /// /// 读取 word文档 返回内容 /// //// ...

  9. Python读取word文档(python-docx包)

    最近想统计word文档中的一些信息,人工统计的话...三天三夜吧 python 不愧是万能语言,发现有一个包叫做 docx,非常好用,具体查看官方文档:https://python-docx.read ...

随机推荐

  1. 【Ray Tracing in One Weekend 超详解】 光线追踪1-7 Dielectric 半径为负,实心球体镂空技巧

    今天讲这本书最后一种材质 Preface 水,玻璃和钻石等透明材料是电介质.当光线照射它们时,它会分裂成反射光线和折射(透射)光线. 处理方案:在反射或折射之间随机选择并且每次交互仅产生一条散射光线 ...

  2. Orleans入门

    一.Grains 二.开发一个Grain 三.开发一个客户端 四.运行应用程序 五.调式 一.Grains Grains是Orleans编程模型的关键原语. Grains是Orleans应用程序的构建 ...

  3. StringBuilder的实现与技巧ZZ

      在上一篇进一步了解String 中,发现了string的不便之处,而string的替代解决方案就是StringBuilder的使用..它的使用也很简单System.Text.StringBuild ...

  4. VM 操作系统实例化(基于 KVM 的虚拟化研究及应用--崔泽永(2011))的论文笔记

    一.VM操作系统实例化 1.建立虚拟磁盘镜像 虚拟磁盘镜像在逻辑上是提供给虚拟机使用的硬盘, 在物理上可以是 L inux系 统内一普通镜像文件, 也可以是真实的物理磁盘或分区. 本方案设计中将虚拟机 ...

  5. 微信小程序自定义音频组件,自定义滚动条,单曲循环,循环播放

    小程序自定义音频组件,带滚动条 摘要:首先自定义音频组件,是因为产品有这样的需求,需要如下样式的 而微信小程序API给我们提供的就是这样的 而且产品需要小程序有后台播放功能,所以我们不考虑小程序的 a ...

  6. Either, neither, both

    http://speakspeak.com/resources/english-grammar-rules/various-grammar-rules/either-neither-both One ...

  7. 使用p3p跨域设置Cookie

    有些时候不能将url上的参数传来传去,比如与调用某开放平台上的接口,这时候可能需要借助Cookie来进行处理了,但这里可能又涉及到跨域的问题. 如果浏览器开启了对Cookie的支持,按照Cookie ...

  8. 突破 BTrace 安全限制

    http://blog.csdn.net/alivetime/article/details/6548615

  9. Java Deadlock Example and How to analyze deadlock situation

    source:http://www.journaldev.com/1058/java-deadlock-example-and-how-to-analyze-deadlock-situation De ...

  10. [CALayer release]: message sent to deallocated instance

    遇到此问题时,查看以下类的dealloc方法中是否有过度释放. 可以在release前先判断以下对象是否还存在. -(void)dealloc { if (!m_tableView) [m_table ...