using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
/// <summary>
/// FileOperate 的摘要说明
/// </summary>
public class FileOperate
{
public FileOperate()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
//生成一个文件
public static bool WriteFile(string FileContent,string FilePath)
{
try
{
string strPath = System.Web.HttpContext.Current.Server.MapPath(FilePath);
if(System.IO.File.Exists(strPath))
{
System.IO.File.Delete(strPath);
}
System.IO.FileStream Fs = System.IO.File.Create(strPath);
byte[] bcontent = System.Text.Encoding.GetEncoding("GB2312").GetBytes(FileContent);
Fs.Write(bcontent,0,bcontent.Length);
Fs.Close();
Fs = null;
return true;
}
catch
{
return false;
}
finally
{
}
}
//读入文件
public static string ReadWrite(string FilePath)
{
try
{
string strPath = System.Web.HttpContext.Current.Server.MapPath(FilePath);
if (System.IO.File.Exists(strPath))
{
string strRead = System.IO.File.ReadAllText(strPath, System.Text.Encoding.GetEncoding("gb2312"));
return strRead;
}
else
{
return "false";
}
}
catch
{
return "false";
}
finally
{
}
}
//向文件中增加内容
public static bool UpdateFile(string FilePath, string FileContent)
{
try
{
string strPath = System.Web.HttpContext.Current.Server.MapPath(FilePath).ToString();
if (!System.IO.File.Exists(strPath))
{
//文件不存在,生成文件
System.IO.FileStream Fs = System.IO.File.Create(strPath);
byte[] bcontent = System.Text.Encoding.GetEncoding("GB2312").GetBytes(FileContent);
Fs.Write(bcontent, 0, bcontent.Length);
Fs.Close();
Fs = null;
return true;
}
System.IO.FileStream FileRead = new System.IO.FileStream(strPath, System.IO.FileMode.Open, System.IO.FileAccess.ReadWrite);
System.IO.StreamReader FileReadWord = new System.IO.StreamReader(FileRead, System.Text.Encoding.Default);
string OldString = FileReadWord.ReadToEnd().ToString();
OldString = OldString + FileContent;
//把新的内容重新写入
System.IO.StreamWriter FileWrite = new System.IO.StreamWriter(FileRead, System.Text.Encoding.Default);
FileWrite.Write(OldString);
//关闭
FileWrite.Close();
FileReadWord.Close();
FileRead.Close();
return true;
}
catch
{
// throw;
return false;
}
}
//删除文件
public static bool DeleteFile(string FilePath)
{
try
{
string strPath = System.Web.HttpContext.Current.Server.MapPath(FilePath).ToString();
if (System.IO.File.Exists(strPath))
{
System.IO.File.Delete(strPath);
}
return true;
}
catch
{
return false;
}
finally
{
}
}
//创建文件夹
public static bool CreateFolder(string FolderName)
{
if (FolderName.Trim().Length > 0)
{
try
{
string FolderPath = System.Web.HttpContext.Current.Server.MapPath(FolderName);
if (!System.IO.Directory.Exists(FolderPath))
{
System.IO.Directory.CreateDirectory(FolderPath);
return true;
}
else
{
return true;
}
}
catch
{
return false;
}
finally
{
}
}
else
{
return false;
}
}
//删除整个文件夹及其字文件夹和文件
public static bool DeleteFolder(string FolderName)
{
if (FolderName.Trim().Length > 0)
{
try
{
string FolderPath = System.Web.HttpContext.Current.Server.MapPath(FolderName);
if (System.IO.Directory.Exists(FolderPath))
{
System.IO.Directory.Delete(FolderPath,true);
return true;
}
else
{
return true;
}
}
catch
{
return false;
}
finally
{
}
}
else
{
return false;
}
}
// 删除整个文件夹及其字文件夹和文件 (验证没成功)
public static bool DeleParentFolder(string FolderPathName)
{
try
{
string strPath = System.Web.HttpContext.Current.Server.MapPath(FolderPathName).ToString();
System.IO.DirectoryInfo DelFolder = new System.IO.DirectoryInfo(strPath);
if (DelFolder.Exists)
{
DelFolder.Delete();
}
return true;
}
catch
{
return false;
}
}
//遍历一个目录下的全部目录
public static DataTable GetDir(string FilePath)
{
DataTable tb = new DataTable();
tb.Columns.Add("name",typeof(string));
tb.Columns.Add("fullname", typeof(string));
string strPath = System.Web.HttpContext.Current.Server.MapPath(FilePath).ToString();
System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(strPath);
foreach ( System.IO.DirectoryInfo dChild in dir.GetDirectories("*"))
{
//如果用GetDirectories("ab*"),那么全部以ab开头的目录会被显示
DataRow Dr=tb.NewRow();
Dr["name"] = dChild.Name; //打印目录名
Dr["fullname"] = dChild.FullName; //打印路径和目录名
tb.Rows.Add(Dr);
}
return tb;
}
//遍历一个目录下的全部目录
public static DataTable GetFile(string FilePath)
{
DataTable tb = new DataTable();
tb.Columns.Add("name", typeof(string));
tb.Columns.Add("fullname", typeof(string));
string strPath = System.Web.HttpContext.Current.Server.MapPath(FilePath).ToString();
System.IO.DirectoryInfo dir = new System.IO.DirectoryInfo(strPath);
foreach (System.IO.FileInfo dChild in dir.GetFiles("*"))
{
//如果用GetDirectories("ab*"),那么全部以ab开头的目录会被显示
DataRow Dr = tb.NewRow();
Dr["name"] = dChild.Name; //打印目录名
Dr["fullname"] = dChild.FullName; //打印路径和目录名
tb.Rows.Add(Dr);
}
return tb;
}