文件上传的相关方法

来源:互联网 发布:国家重大新药创制 知乎 编辑:程序博客网 时间:2024/05/17 23:50

#region 上传文件的类型枚举,方法名:FileType

protected enum FileType

{

    jpg, gif, bmp, png, swf, txt, doc, xsl, ppt

}

#endregion

 

#region 取得文件扩展名,方法名:GetFileExtends(string FileName)

/// <summary>

/// 取得文件扩展名

/// </summary>

/// <param name="FileName">文件名(包括扩展名,但不包括路径)</param>

/// <returns></returns>

protected static string GetFileExtends(string FileName)

{

    string Extends = null;

    if (FileName.IndexOf('.') > 0)

    {

        string[] FileNames = FileName.Split('.');

        Extends = FileNames[FileNames.Length - 1].ToString();

    }

    return Extends;

}

#endregion

 

#region 检查上传文件的合法性,方法名:CheckFileExtends()

/// <summary>

/// 检查上传文件的合法性

/// </summary>

/// <param name="FileExtends">要检查的文件扩展名</param>

/// <returns></returns>

protected static bool CheckFileExtends(string FileExtends)

{

    bool status = false;

    FileExtends = FileExtends.ToLower();

    string[] FileExtendses = Enum.GetNames(typeof(FileType));

    for (int i = 0; i < FileExtendses.Length; i++)

    {

        if (FileExtendses[i].ToLower() == FileExtends)

        {

            status = true;

            break;

        }

    }

    return status;

}

#endregion

 

#region 上传附件,方法名:PictureUpload(string asPicturePath, FileUpload asFileUpload, string asFileExtends)

/// <summary>

/// 上传附件

/// </summary>

/// <param name="asPicturePath">需要上传到的服务器路径</param>

/// <param name="asFileUpload">上传控件</param>

/// <param name="asFileExtends">附件的扩展名</param>

/// <returns></returns>

protected int PictureUpload(string asPicturePath, FileUpload asFileUpload, string asFileExtends)

{

    int fhz = 0;

    if (CheckFileExtends(asFileExtends))

    {

        try

        {

            asFileUpload.SaveAs(asPicturePath);

            fhz = 1;

        }

        catch

        {

            fhz = 0;

        }

    }

    else

    {

        return fhz = 0;

    }

    return fhz;

}

#endregion

 

#region 返回文件全名,方法名:dGetFileName(FileUpload asFileUpload)

public string dGetFileName(FileUpload asFileUpload)

{

    string FilePath = asFileUpload.PostedFile.FileName.ToString();

    string FileExtends = null;

    string BigPictureName = null;

    if (FilePath != "")

    {

        FileInfo myFileInfo = new FileInfo(FilePath);

        string PictureName = myFileInfo.Name.ToString();

        if (PictureName != null)

        {

            FileExtends = GetFileExtends(PictureName);

            BigPictureName = System.DateTime.Now.DayOfYear.ToString() + asFileUpload.PostedFile.ContentLength.ToString() + "." + FileExtends.ToString();

        }

        else

        {

            BigPictureName = "";

        }

    }

    return BigPictureName;

}

#endregion

 

#region 保存上传文件,方法名:dUploadSave(string asFilePath, FileUpload asFileUpload)

/// <summary>

/// 保存上传文件

/// </summary>

/// <param name="asFilePath">需要上传到的服务器路径</param>

/// <param name="asFileUpload">上传控件</param>

/// <returns></returns>

public int dUploadSave(string asFilePath, FileUpload asFileUpload)

{

    //int Fhz;

    //string FilePath = asFileUpload.PostedFile.FileName.ToString();

    //FileInfo myFileInfo = new FileInfo(FilePath);

    //string PictureName = myFileInfo.Name.ToString();

    //string FileExtends = null;

    //if (PictureName != null)

    //{

    //    FileExtends = GetFileExtends(PictureName);

    //    string BigPictureName = System.DateTime.Now.DayOfYear.ToString() + asFileUpload.PostedFile.ContentLength.ToString() + "." + FileExtends.ToString();

    //    string SmallPictureName = "S_" + BigPictureName.ToString();

    //    string BigPicturePath = asFilePath + BigPictureName.ToString();

    //    string SmallPicturePath = asFilePath + SmallPictureName.ToString();

    //    Fhz = PictureUpload(BigPicturePath, asFileUpload, FileExtends);

    //}

    //else

    //{

    //    Fhz = 0;

    //}

    //return Fhz;

 

    int Fhz = 0;

    string StringAnswer = dGetFileName(asFileUpload);

    if (StringAnswer != null)

    {

        string BigPictureName = StringAnswer.Substring(0, StringAnswer.LastIndexOf(".")).ToString();

        string FileExtends = StringAnswer.Substring(StringAnswer.LastIndexOf(".") + 1).ToString();

        if (StringAnswer != "")

        {

            string BigPicturePath = asFilePath + StringAnswer.ToString();

            Fhz = PictureUpload(BigPicturePath, asFileUpload, FileExtends);

        }

    }

    return Fhz;

}

#endregion

                                                                                                                            --摘自互联网经修改

原创粉丝点击