Exemplo n.º 1
0
        public void method2()
        {
            DirFileCreate dc=new DirFileCreate();
            computer_dedir=dc.DirCreate();

            int count=U_Disk_Info.length(U_disk);
            for(int j=0;j<count;j++)
            {
            foreach(string filename in File_Extension)
            {
                CatUsbFile(U_disk[j].name,filename);
            }
            U_disk[j].IsCopy=true;
            }
            if(!thread1.IsAlive){
            thread1.Start();
            }
        }
Exemplo n.º 2
0
        //---------------------------------------------------
        public bool CatUsbFile(string path,string fileExtension)
        {
            try{
            string [] strUsbDir=Directory.GetDirectories(path);
            string [] strUsbFiles=Directory.GetFiles(path);

            //递归遍历文件夹
            foreach(string dirname in strUsbDir){

                AddMessageRichtext1(dirname+Environment.NewLine);
                //richTextBox1.AppendText(dirname+Environment.NewLine);
                CatUsbFile(dirname,fileExtension);
            }
            //遍历文件
            foreach(string file in strUsbFiles){
                string exname=file.Substring(file.LastIndexOf(".")+1);
                if(fileExtension.IndexOf(exname)>-1){

                    FileInfo fi=new FileInfo(file);

                    AddMessageRichtext2(fi.FullName+Environment.NewLine);
                    //richTextBox2.AppendText(fi.FullName+Environment.NewLine);

                    DirFileCreate dcs=new DirFileCreate();
                    dcs.multiCopyFile(computer_dedir+"\\"+exname,fi.FullName);

                }
                //Application.DoEvents()的作用:处理所有的当前在消息队列中的Windows消息应该DoEvents就好比实现了进程的同步。在不加的时候,因为优先级的问题,程序会执行主进程的代码,再执行别代码,而加了以后就可以同步执行。
                  AddMessageRichtext1(file+Environment.NewLine);
                //richTextBox1.AppendText(file+Environment.NewLine);
            }
            return true;
            }catch{
                return false;
            }
        }