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

WEB读取WORD
我现在有个WORD(是纯文本)
我想让它显示在WEB 上,我用的以下方法,虽然能显示出来但是 WORD 的格式就没了。
我查了好多资料,说要 导入 模板,可是我不知道 模板该怎么导~

C# code



//传文档所在路径 返回文档内容
public string Doc2Text(string docFileName)
        {
            //实例化COM
            Microsoft.Office.Interop.Word.ApplicationClass wordApp = new Microsoft.Office.Interop.Word.ApplicationClass();
            object fileobj = docFileName;
            object nullobj = System.Reflection.Missing.Value;
            //打开指定文件(不同版本的COM参数个数有差异,一般而言除第一个外都用nullobj就行了)
            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);
            //返回
            return outText;
        } 




------解决方案--------------------
word格式是不能完全在html显示的,2者是不同的技术,

要完全显示,你需要转成pdf或者图片,swf等
------解决方案--------------------
纯文本还要什么格式?
word的排版技术和html是不同的,2者不能完全替代,
要保留部分格式,你可以转成html而不是直接去读取text
doc.Save

http://dotnet.aspx.cc/article/13c874e4-7fc7-4fd1-8cf6-de9ef4469a9c/read.aspx
------解决方案--------------------
可以把word另存为html格式,这样就可以直接在网页中展示了。
------解决方案--------------------
這個非常好
OfficeWriter API 8.1 for Excel and Word IN ASP.NET 
http://ufo-crackerx.blog.163.com/blog/static/1130787782012229748155/
------解决方案--------------------
控件難道不行?
------解决方案--------------------
不是给你链接了啊
------解决方案--------------------
Response.ContentType = "application/msword";
Response.AddHeader("Content-Disposition","attachment;filename=" +
HttpUtility.UrlEncode(file.FILENAME).Replace("+","%20"));// 防止乱码
Response.Charset="UTF-8"; 
Response.ContentEncoding=System.Text.Encoding.Default;
Response.BinaryWrite(文件流);
Response.End();


你用这个试试看,一般这样的都要用的文件流
------解决方案--------------------
word文档另存为模板。可以用书签操作模板的内容,但是没有根据模板进行显示。
------解决方案--------------------
既然文本 就没什么格式了

除非转成网页 那样有CSS

或者直接生成图片啊
------解决方案--------------------
WORD本来就不是用浏览器来显示的,你的设计就有问题,即然是纯文本,那就应该是TXT,如果你的WORD文件含有格式,它就不是纯文本。
------解决方案--------------------
加个xml的头文件 啥的