zoukankan      html  css  js  c++  java
  • 直接在网页上显示word2007文档

    示例地址      代码下载

    其实很简单,就是用我上次说的那个使用c#打开word2007文档的的方法,用xslt格式化一下就可以了,不过,由于对ooxml格式不太了解,只分析了最简单的那几个标签,图片,表格等目前还不知道怎么格式化,有xslt高手可以指导一下,
    代码如下,在在页面加多一个xml控件就可以了,嘿嘿,居然还能通过w3

     1static string savName = string.Empty;
     2
     3
     4protected void button1_Click(object sender, EventArgs e)
     5        {
     6
     7            if (FileUpload1.HasFile)
     8            {
     9                if (FileUpload1.PostedFile.ContentType == "application/vnd.openxmlformats-officedocument.wordprocessingml.document")
    10                {
    11                    savName = Server.MapPath("/DocToDocx/" + FileUpload1.FileName);
    12                    FileUpload1.SaveAs(savName);
    13                    //有条件可以在服务器上安装office2007直接对2007以前的doc文档进行文档转换
    14                    //ConvertToDocx();
    15                    DispPlayOnWeb();
    16                }

    17                else
    18                {
    19                    Response.Write("对不起,只能上传office2007以docx为后缀的文件");
    20                }

    21            }

    22        }

    23
    24        //void ConvertToDocx()
    25        //{
    26        //    object fileName = savName;
    27        //    object missing = Type.Missing;
    28        //    object isFalse = false;
    29        //    object isTrue = true;
    30        //    MSWord.ApplicationClass wordApp = new Microsoft.Office.Interop.Word.ApplicationClass();
    31        //    wordApp.Visible = false;
    32        //    MSWord.Document wordDocument = wordApp.Documents.Open(
    33        //        ref fileName,//文件名称
    34        //        ref isFalse,//如果文件有错误是否提示转换,我们在服务器运行,出现也看不到,就不用出现提示了
    35        //        ref isFalse,//是否以只读形式打开,我们要对其转换,不能只读
    36        //        ref isFalse,//是否增加到最精打开的文件
    37        //        ref missing,
    38        //        ref missing,
    39        //        ref isFalse,
    40        //        ref missing,
    41        //        ref missing,
    42        //        ref  missing,
    43        //        ref missing,
    44        //        ref isFalse,
    45        //        ref isTrue,
    46        //        ref missing,
    47        //        ref isFalse,
    48        //        ref missing
    49        //        );
    50
    51        //    //直接使用其转换方法转换文档
    52        //    wordDocument.Convert();
    53
    54        //    wordDocument.Save();
    55
    56        //    wordDocument.Close(ref missing, ref missing, ref missing);
    57
    58        //    wordApp.Quit(ref missing, ref missing, ref missing);
    59        //    wordApp = null;
    60        //}
    61
    62        void DispPlayOnWeb()
    63        {
    64            //string fileName = savName.Substring(0, savName.LastIndexOf('.')) + ".docx";
    65            using (Package package = Package.Open(savName, FileMode.Open, FileAccess.Read))
    66            {
    67                Uri docxUri = new Uri("/word/document.xml", UriKind.Relative);
    68                PackagePart docxPart = package.GetPart(docxUri);
    69
    70                XmlDocument docxXml = new XmlDocument();
    71                docxXml.Load(docxPart.GetStream());
    72
    73                Xml1.Document = docxXml;
    74
    75                package.Close();
    76
    77                File.Delete(savName);
    78            }

    79
    80
    81        }

    82
  • 相关阅读:
    FirstApp,iphone开发学习总结10,归档(序列化、固化)
    FirstApp,iphone开发学习总结9,旋转
    iphone开发学习,开源之UIAlertViewBlocks
    FirstApp,iphone开发学习总结13,方向感应和通告
    iphone开发学习,开源之Three20
    FirstApp,iphone开发学习总结11,表操作(移动、删除)
    FirstApp,iphone开发学习总结12,播放音乐、视频
    iphone开发学习,开源,ASIHTTPRequest的学习
    iphone开发学习,开源之SVWebViewController,UIWebView支持后退、前进、刷新、使用Safari打开
    iphone开发学习,Block
  • 原文地址:https://www.cnblogs.com/tthxnz/p/1201531.html
Copyright © 2011-2022 走看看