您的位置:首页 > 其它

文件的一些基本操作

2007-01-07 11:07 381 查看
using System;


using System.IO;


using System.Text;




namespace Document.Bll






{




    /**//// <summary>


    /// Summary description for fileinfo.


    /// </summary>


    public class fileinfo




    

{


        public fileinfo()




        

{


            //


            // TODO: Add constructor logic here


            //


        }


        


        




        获取某目录下的所有文件(包括子目录下文件)的数量#region 获取某目录下的所有文件(包括子目录下文件)的数量        


        public int GetFileNum(string Path)




        

{


            int fileNum = 0;


            string[] fileList = System.IO.Directory.GetFileSystemEntries(Path);


            // 遍历所有的文件和目录


            foreach(string file in fileList)




            

{


                if(System.IO.Directory.Exists(file))


                    GetFileNum(file);


                else


                    fileNum++;


            }            


            return fileNum;


        }


        #endregion






        获取某目录下的所有文件(包括子目录下文件)的大小#region 获取某目录下的所有文件(包括子目录下文件)的大小


        public long GetDirectoryLength(string dirPath)




        

{


            if(!Directory.Exists(dirPath))


                return 0;


            long len=0;


            DirectoryInfo di=new DirectoryInfo(dirPath);


            foreach(FileInfo fi in di.GetFiles())




            

{


                len+=fi.Length;


            }


            DirectoryInfo[] dis=di.GetDirectories();


            if(dis.Length>0)




            

{


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




                

{


                    len+=GetDirectoryLength(dis[i].FullName);


                }


            }


            return len;


        }


        #endregion






        读取文件#region 读取文件


        private string file_get_contents(string path)




        

{


            StringBuilder s=new StringBuilder();


            using (StreamReader sr = new StreamReader(path,System.Text.Encoding.GetEncoding ("GB2312"))) 




            

{


                        string line;
                            while ((line = sr.ReadLine()) != null)




                

{


                    s.Append(line);


                }


            }            


            return s.ToString();


        }


        #endregion






        写文件#region 写文件


        public static void writefile() 




        

{


            StreamWriter sw = new StreamWriter("TestFile.txt",true,System.Text.Encoding.GetEncoding("GB2312")) ;


            // Add some text to the file.


            sw.Write("This is the ");


            sw.WriteLine("header for the file.");


            sw.WriteLine("-------------------");


            // Arbitrary objects can also be written to the file.


            sw.Write("The date is: ");


            sw.WriteLine(DateTime.Now);


        }


        #endregion






        System.IO.Path#region System.IO.Path


        private void System_IO_Path()




        

{


            string path=@"c:/test/a.txt";




            string ChangeExtension=System.IO.Path.ChangeExtension(path,".old");//更改路径字符串的扩展名。 


            string CombinePath=System.IO.Path.Combine(@"c:/","b.txt");//合并两个路径字符串。 


            string DirectoryName=System.IO.Path.GetDirectoryName(path);//返回指定路径字符串的目录信息。 


            string Extension=System.IO.Path.GetExtension(path);//返回指定的路径字符串的扩展名。 


            string FileName=System.IO.Path.GetFileName(path);//返回指定路径字符串的文件名和扩展名。 


            string FileNameWithoutExtension=System.IO.Path.GetFileNameWithoutExtension(path); //返回不具有扩展名的指定路径字符串的文件名。 


            string FullPath=System.IO.Path.GetFullPath(path);//返回指定路径字符串的绝对路径。 


            string PathRoot=System.IO.Path.GetPathRoot(path);//获取指定路径的根目录信息。 


            string TempFileName=System.IO.Path.GetTempFileName();//返回唯一临时文件名并在磁盘上通过该名称创建零字节文件。 


            string TempPath=System.IO.Path.GetTempPath();//返回当前系统的临时文件夹的路径。 


            string HasExtension=System.IO.Path.HasExtension(path).ToString();//确定路径是否包括文件扩展名。 


            string IsPathRooted=System.IO.Path.IsPathRooted(path).ToString();//获取一个值,该值指示指定的路径字符串是包含绝对路径信息还是包含相对路径信息。


        }




        #endregion


    }


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐