asp.net mvc中如何读取上传的doc文件中的数据(含有中文字符)

asp.net mvc中如何读取上传的doc文件中的数据(含有中文字符),第1张

using Aspose.Words要引用这个dll

#region 获取正文内容冲枯正

Byte[] wordbytes = GetReadWord()//获取文件二进制

var strFileName = Server.MapPath("~/temp/a.doc")

var strhtmlFileName = Server.MapPath("~/temp/b.htm")

var file = File.OpenWrite(strFileName)

file.Write(wordbytes, 0, wordbytes.Length)

file.Close()

file.Dispose()

Aspose.Words.Document d = new Aspose.Words.Document(strFileName)

d.Save(strhtmlFileName, SaveFormat.Html)

var htmlCode = File.ReadAllText(strhtmlFileName, Encoding.GetEncoding("GB2312"))

File.Delete(strFileName)

File.Delete(strhtmlFileName)

#endregion

htmlCode 字段就是获取的内容散悔败肆字符串

不确定,供参考一下,

看一下服务器提供锋隐迟商IIS 7上所安装的模块(银李Module),看有没有少了UrlAuthorization(尤其是这个)、UrlMappingsModule、UrlRoutingModule这些“托管模块”,还有可能缺少的“本机模块”是什么我忘了。。

再不行的话就让服务器提供商把他IIS 7上所安装的模块(本机的跟托管的)名字复制一份给你,然后把这些模块名字跟你自己机子上的IIS 7所安装模块名字对比一下,看看服务器提供商的IIS 7有没有少了哪个(些)模块。。

如果少了的话,当然让他加上。。只是我也不能确定加上了就起作用。。

如携坦果不明白的话,请补充问题,希望我能帮到你。

如果这对你有帮助话,请将此标为最佳答案,谢谢。

重新说明喊芦一下,之前我测试用的是谷歌浏览器不是IE。在IE中file.FileName包含路径名的,而谷歌不包含。所以我之前的回答中才郑键带会说文件名中不包含路径名,我想你问题就是这个引起的。你可以在保存前加个判断:

string fileName = file.FileName

if (fileName.LastIndexOf("亮核\\") >-1)

{

fileName = fileName.Substring(fileName.LastIndexOf("\\") + 1)

}

这样就Ok了,同时兼容谷歌和IE


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/12320211.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存