一个关于文件操作的类(功能还是有点弱)
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); }
}
初初写了文件操作的类,补充写的以前一些功能,感觉还是不行,以后逐步学习再加强吧
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); }
}