日期:2014-05-17  浏览次数:20399 次

asp.net怎样超链接显示 word文档?
asp.net中要显示(不编辑)word文件,请问如何实现?谢谢!

之前我在网上找了如下代码,Response.Write("<script language=javascript> this.parent.rightFrame.location.href='c:\\abc.doc'</script>");

但是似乎没有任何效果。。

------解决方案--------------------
调用office组件,然后将word转换为html代码,在根据具体路径显示到界面
------解决方案--------------------
HTML code
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="js读取word.aspx.cs" Inherits="js读取word" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">

    <script language='javascript'>
        //默认word转化文件放于C:\\下
        var os__localPath = "C:\\";
        //保存的文件名
           var os__localFile = "defaultFileWord.htm";
           var os__xmlDom = new ActiveXObject("MSXML2.DOMDocument");
           var os__xmlFSO ;

           //保存数据到当前客户端(可以传入一个要保存的文件名).
           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 = document.getElementById("updFile");
                //获得客户端Word文件路径和文件
                var UpFileValue = objUpFile.value;
                if(os__xmlFSO == null)
                  os__xmlFSO = new ActiveXObject("Scripting.FileSystemObject");     
                
                try
                {
                     if(UpFileValue == "")
                     {
                          alert('请选择对应的Word文件');
                          objUpFile.focus();
                     }
                     else if(UpFileValue.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(UpFileValue);
                          objDoc.SaveAs(os__localPath+os__localFile, wdFormatHTML);
                          
                          UpFileValue = "";
                          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>");
                          
                          GetHtml = GetHtml.replace("lang=ZH-CN","");