關於文件/文件夾的使用

1.讀取一個文件夾(可以自選)內的所有文件

       FolderBrowserDialog dlgOpenFolder = new FolderBrowserDialog();
            if (dlgOpenFolder.ShowDialog() == DialogResult.OK)
            {
                lblSourceLabel.Text = "Source Label File:" + dlgOpenFolder.SelectedPath;
                DirectoryInfo dir = new DirectoryInfo(dlgOpenFolder.SelectedPath + @"\");
                FileInfo[] filess = dir.GetFiles();
                foreach (FileInfo file in filess)
                {
                    
                }
                btnPackingListPrint.Enabled = true;
                btnPrintPDF.Enabled = true;
                MessageBox.Show("轉換完成!");
            }

2.如何判斷將要讀取的文件是否有全部控制權限

        if (CheckFileLock(PrintLabelModel.SavePath + file, ref j))
        {
     }

     public static bool CheckFileLock(string fileName, ref int TryTimes) { return CheckFileLock(fileName, ref TryTimes, InputFileTryInterval); } public static bool CheckFileLock(string fileName, ref int TryTimes, int tryintervalms) { var _numberOfTries = TryTimes; TryTimes = 0; while (true) { TryTimes++; try { using (var fs = File.Open(fileName, FileMode.Open, FileAccess.ReadWrite, FileShare.Delete)) { fs.Close(); } return true; } catch (IOException e) { if (!IsFileLocked(e)) { throw; } if (++TryTimes > _numberOfTries) { //Loghelper.Write(LogLevel.Info, "讀取次數:" + TryTimes); throw new Exception("The file is locked too long: " + e.Message, e); } Thread.Sleep(tryintervalms); } } }

 

posted @ 2015-03-09 21:19  空陈  阅读(223)  评论(0)    收藏  举报