///<summary>
    ///目標檔案夾下的所有子檔案夾下的檔案
    ///</summary>
    ///<param name="ObjDirPath">檔案夾</param>
    public DataTable DtGetFiles()
    {
        //檔案夾的路徑
        string ObjDirPath = Server.MapPath("File/today/" + gd.Substring(0, 5) + "/" + gd.Substring(0, 9) + "/");
        //實體化datatable
        DataTable dt = new DataTable();
        dt.Columns.Add(new DataColumn("FileName", typeof(string)));
        dt.Columns.Add(new DataColumn("FileLength", typeof(string)));
        dt.Columns.Add(new DataColumn("FileCreateTime", typeof(string)));
        DataRow dr;  //建立dr
        DirectoryInfo SourceDir = new DirectoryInfo(ObjDirPath);
        //循環檔案
        foreach (FileSystemInfo FSI in SourceDir.GetFileSystemInfos())
        {
            //讀取檔案大小
            System.IO.FileStream fsIn = System.IO.File.OpenRead(FSI.FullName);
            dr = dt.NewRow();
            dr[0] = FSI.FullName.Substring(FSI.FullName.LastIndexOf("\\") + 1);
            dr[1] = GetFileSize(int.Parse(fsIn.Length.ToString()));
            dr[2] = FSI.CreationTime.ToShortDateString();
            dt.Rows.Add(dr);
            }
        return dt;
        }
/// <summary>
    /// 得到檔案大小
    /// </summary>
    /// <param name="size">文件的大小</param>
    /// <returns></returns>
    public string GetFileSize(int size) 
    {
        string FileSize = "";
        if (size!=0)
        {
            if (size >= 1073741824)
            {
                FileSize = System.Math.Round(Convert.ToDouble((double)size / (double)1073741824),2).ToString() + "GB";  //GB
            }
            else if (size >= 1048576)
            {
                FileSize = System.Math.Round(Convert.ToDouble((double)size / (double)1048576), 2).ToString() + "MB";
            }
            else if (size >= 1024)
            {
                FileSize = System.Math.Round(Convert.ToDouble((double)size / (double)1024),2).ToString() + "KB";
                int a = size / 1024*100;
                int b = size / 1024;
            }
            else
            {
                FileSize = size.ToString() + "bytes";
            }
        }
        else 
        {
            FileSize = size.ToString() + "bytes";
        }
        return FileSize;
    }
創作者介紹
創作者 shadow 的頭像
shadow

資訊園

shadow 發表在 痞客邦 留言(0) 人氣()