1. 程式人生 > >C# IO有關操作

C# IO有關操作

一.讀取文字檔案
1/**//// <summary>
 2/// 讀取文字檔案
 3/// </summary>
 4private void ReadFromTxtFile()
 5{
 6    if(filePath.PostedFile.FileName != "")
 7    {
 8        txtFilePath =filePath.PostedFile.FileName;
 9        fileExtName = txtFilePath.Substring(txtFilePath.LastIndexOf(".")+1,3);
10
11        if(fileExtName !="txt" && fileExtName != "TXT")
12        {
13            Response.Write("請選擇文字檔案");
14        }
15        else
16        {
17            StreamReader fileStream = new StreamReader(txtFilePath,Encoding.Default);
18            txtContent.Text = fileStream.ReadToEnd();
19            fileStream.Close();
20        }
21    }
22 }
二.獲取檔案列表
1/**//// <summary>
  2/// 獲取檔案列表
  3/// </summary>
  4private void GetFileList()
  5{
  6    string strCurDir,FileName,FileExt;
  7   
  8    /**////檔案大小
  9    long FileSize;
 10   
 11    /**////最後修改時間;
 12    DateTime FileModify;
 13
 14    /**////初始化
 15    if(!IsPostBack)
 16    {
 17        /**////初始化時,預設為當前頁面所在的目錄
 18        strCurDir = Server.MapPath(".");
 19        lblCurDir.Text = strCurDir;
 20        txtCurDir.Text = strCurDir;
 21    }
 22    else
 23    {
 24        strCurDir = txtCurDir.Text;
 25        txtCurDir.Text = strCurDir;
 26        lblCurDir.Text = strCurDir;
 27    }
 28    FileInfo fi;
 29    DirectoryInfo dir;
 30    TableCell td;
 31    TableRow tr;
 32    tr = new TableRow();
 33   
 34    /**////動態新增單元格內容
 35    td = new TableCell();
 36    td.Controls.Add(new LiteralControl("檔名"));
 37    tr.Cells.Add(td);
 38    td = new TableCell();
 39    td.Controls.Add(new LiteralControl("檔案型別"));
 40    tr.Cells.Add(td);
 41    td = new TableCell();
 42    td.Controls.Add(new LiteralControl("檔案大小"));
 43    tr.Cells.Add(td);
 44    td = new TableCell();
 45    td.Controls.Add(new LiteralControl("最後修改時間"));
 46    tr.Cells.Add(td);
 47
 48    tableDirInfo.Rows.Add(tr);
 49   
 50    /**////針對當前目錄建立目錄引用物件
 51    DirectoryInfo dirInfo = new DirectoryInfo(txtCurDir.Text);
 52   
 53    /**////迴圈判斷當前目錄下的檔案和目錄
 54    foreach(FileSystemInfo fsi in dirInfo.GetFileSystemInfos())
 55    {
 56        FileName = "";
 57        FileExt = "";
 58        FileSize = 0;
 59       
 60        /**////如果是檔案
 61        if(fsi is FileInfo)
 62        {
 63            fi = (FileInfo)fsi;
 64           
 65            /**////取得檔名
 66            FileName = fi.Name;
 67           
 68            /**////取得檔案的副檔名
 69            FileExt = fi.Extension;
 70           
 71            /**////取得檔案的大小
 72            FileSize = fi.Length;
 73           
 74            /**////取得檔案的最後修改時間
 75            FileModify = fi.LastWriteTime;
 76        }
 77
 78        /**////否則是目錄
 79        else
 80        {
 81            dir = (DirectoryInfo)fsi;
 82           
 83            /**////取得目錄名
 84            FileName = dir.Name;
 85           
 86            /**////取得目錄的最後修改時間
 87            FileModify = dir.LastWriteTime;
 88           
 89            /**////設定檔案的副檔名為"資料夾"
 90            FileExt = "資料夾";
 91        }
 92       
 93        /**////動態新增表格內容
 94        tr = new TableRow();
 95        td = new TableCell();
 96        td.Controls.Add(new LiteralControl(FileName));
 97        tr.Cells.Add(td);
 98        td = new TableCell();
 99        td.Controls.Add(new LiteralControl(FileExt));
100        tr.Cells.Add(td);
101        td = new TableCell();
102        td.Controls.Add(new LiteralControl(FileSize.ToString()+"位元組"));
103        tr.Cells.Add(td);
104        td = new TableCell();
105        td.Controls.Add(new LiteralControl(FileModify.ToString("yyyy-mm-dd hh:mm:ss")));
106        tr.Cells.Add(td);
107        tableDirInfo.Rows.Add(tr);
108    }
109}