如何处理文件

处理文件时可能会用到的方法

  1. 需要限制上载文件的大小

使用ContentLength返回文件长度(以字节为单位)。

例:

上传的文件不能大于10MB

public ActionResult UploadAttachment(HttpPostedFileBase attachmentFile)

{

If(attachmentFile.ContentLength<=(10 * 1024 * 1024)){

.....

}else{.....}

}

  

2.检查文件目录

 !Directory.Exists(Server.MapPath(~/Document/Temp/))    

-Exists:确定给定路径是否引用磁盘上的现有目录

-Server:获取提供Web请求处理期间使用的方法符HttpServerUtilityBase.

-MapPath:在派生类重写时返回与Web服务器上的指定虚拟路径对应的物理文件路径

3.文件目录不存在创建目录:

Directory.CreateDirectory(Server.MapPath(~/Document/Temp))

CreateDirectory:在指定路径中创建所有,目录和子目录,除非他们已经存在。

4.获取不具有扩展名的文件名

  string fileName = Path.GetFileNameWithoutExtension(attachmentFile.FileName);

GetFileNameWithoutExtension返回不具有扩展名的指定路径字符串的文件名。

5.处理文件的类

(1)file类:处理文件

(2)Directory类:处理文件目录

6.FileStream类

System.IO命名空间中的FileStream类有助于文件的读写与关闭。该类派生自抽象类Stream.

 

7.、StreamWriter 类主要用于向流中写入数据StreamReader 类主要用于向流中读出数据

8.判断上传的文件是否为word文档

                //获取文件后缀

                string fileExtension = Path.GetExtension(file.FileName);

                if ("(.doc)|(.docx)".Contains(fileExtension))

                {

                    #region 将word文档保存到指定位置

                    //判断指定路径是否存在

                    if (!Directory.Exists(Server.MapPath("~/Document/Title/Temp/")))

                    {

                        Directory.CreateDirectory(Server.MapPath("~/Document/Title/Temp/"));

                    }

                    //设置文件名

                    string fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + file.FileName;

                    //文件的物理路径

                    //string filePath = Server.MapPath("~/Document/Title/Temp/")+fileName;

                    string filePath = Path.Combine(Server.MapPath("~/Document/Title/Temp/"), fileName);

                    file.SaveAs(filePath);

9.将html文档保存到指定位置

 //html的文件名

                    string htmlName = fileName.Replace(fileExtension,".html");

                    //html文档的位置

                    string htmlPath = Path.Combine(Server.MapPath("~/Document/Title/Temp/"),htmlName);

                    Document document = new Document();

                    document.LoadFromFile(filePath);

                    document.SaveToFile(htmlPath, FileFormat.Html);

                    Spire.Doc for .NET是一款由E-iceblue公司开发的专业的Word .NET类库,

                        使用该工具开发人员可以在任意.NET平台(C#,VB.NET,ASP.NET)上快速创建,读取,写入,转换,打印Word文档。

                        作为一个独立的Word 组件,Spire.Doc的运行无需安装Microsoft Word。

                        而且,它可以将Microsoft Word文档创建功能集成到开发者的任何.NET应用程序   

                        Spire.Doc.for .NET 是一个专业的word .NET库

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值