一个关于文件操作的类(功能还是有点弱)

using  System;
using  System.IO;
using  System.Text;

/// <summary>
/// Summary description for FileOperation
/// </summary>

public   class  FileOperation
{
    
public FileOperation()
    
{

    }

    
/*初始化*/
    
private void Init()
    
{
        opened 
= false;
        openforwriter 
= false;
    }


    
/* 文件路径和名*/
    
public string message;
    
string _filename;
    
string _direcory;
    
string _filepath;
     
int  _count;
    
string[] dirname, filename;
    
private StreamReader ts;
    
private StreamWriter ws;
    
public bool opened, openforwriter;
    
    
public string FileName
    
{
        
get
        
return _filename; }
        
set
        
{ _filename = value; }
    }

    
public string Direcry
    
{

        
get return _direcory; }

        
set { _direcory = value; }
    }

     
//删除文件夹 
    public void DeleteFolder()
    
{   
        
string dir;
        dir
=_direcory ;
    
if (Directory.Exists(dir))   //如果存在这个文件夹删除之 
    {
        
foreach (string d in Directory.GetFileSystemEntries(dir))
        
{
            
if (File.Exists(d))
            
{ File.Delete(d); }  //直接删除其中的文件 
            else
            
{ DeleteFolder(d); } //递归删除子文件夹 
        }

        Directory.Delete(dir);   
//删除已空文件夹 
         message ="删除文件夹成功";
    }

    
else
    
{
        message.Remove(
1, message.Length);
      message 
= "文件夹不存在";
     }


    }

    
//删除文件
    public void DeleteFile()
    
{
        
if (File.Exists(_filename))
        
{ File.Delete(_filename); }
        
else
        
{
            message.Remove(
1, message.Length);
          message 
= "文件不存在";
    }

    }

    
   
//得到文件目录
    public string [] GetDirectName()
    

    
     _count 
= 0;

     DirectoryInfo dirroot 
= new DirectoryInfo(_direcory);
     DirectoryInfo[] dirs 
= dirroot.GetDirectories(_direcory);
     
foreach (DirectoryInfo dir in dirs)
     
{ _count++;
      dirname[_count] 
= dir.Name;
     }

     
return dirname;
    }

    
public string[] GetFileName()
    
{         
       _count 
= 0;
        DirectoryInfo dirroot 
= new DirectoryInfo(_direcory);
        FileInfo [] files
=dirroot .GetFiles ();
        
foreach (FileInfo file in files  )
        
{ _count++;
         filename[_count] 
= file.Name;
        }

        
return filename;
    }

    
//创建文件目录
    public void CreateDirect(string newdirecory)
    
{
       
        Directory .SetCurrentDirectory (_direcory );
        Directory.CreateDirectory(newdirecory);


    }

    
//创建新文件

    
public void CreateFile(string filename)
    
{
        
if (File.Exists(filename))
        
{
            message 
= "";
            message 
= "文件已经存在";

        }

        
else
        
{ File.Create (filename);}
    }



    
/*读取文件*/
    
public bool OpenForRead(string filename)
    
{
        _filename 
= filename;
        
try
        
{
            ts 
= new StreamReader(_filename);
            opened 
= true;
            
return true;
        }

        
catch (FileNotFoundException ex)
        
return false; }
    }

    
public bool OpenForRead()
    
{
        
return OpenForRead(_filename);
    }

    
public string ReadLine()
    
return ts.ReadLine(); }
    
/*写文件*/

    
public bool OpenForWrite()
    
return OpenForWrite(_filename); }
    
public bool OpenForWrite(string filename)
    
{
        _filename 
= filename;
        
try
        
{
            ws 
= new StreamWriter(_filename);
            openforwriter 
= true;
            
return true;
        }

        
catch (FileNotFoundException ex)
        
return false; }

    }

    
public void WriteLine(string cha)
     
{ ws.WriteLine(cha); }
    
public string FilePath
     
{
        
get return _filepath; }
        
set { _filepath = value; }
     }

    
//文件的移动
    public void movefile(string sourcefile ,string  destfile)
    
{ File.Move(sourcefile ,destfile ); }

    
//文件的复制
    public void Copyfile(string sourcefile ,string  destfile)
    
{ File.Copy(sourcefile, destfile); }


   
    
}

初初写了文件操作的类,补充写的以前一些功能,感觉还是不行,以后逐步学习再加强吧

你可能感兴趣的:(文件操作)