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;
using System.Text;
using System.IO;
/// <summary>
/// FileObj 的摘要說明
/// </summary>
public class FileObj
{
#region 構造函數
private bool _alreadyDispose = false;
public FileObj()
{
//
// TODO: 在此處添加構造函數邏輯
//
}
~FileObj()
{
Dispose(); ;
}
protected virtual void Dispose(bool isDisposing)
{
if (_alreadyDispose) return;
//if (isDisposing)
//{
// if (xml != null)
// {
// xml = null;
// }
//}
_alreadyDispose = true;
}
#endregion
#region IDisposable 成員
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
}
#endregion
#region 取得文件後綴名
/****************************************
* 函數名稱:GetPostfixStr
* 功能說明:取得文件後綴名
* 參 數:filename:文件名稱
* 調用示列:
* string filename =
"aaa.aspx";
* string s =
EC.FileObj.GetPostfixStr(filename);
*****************************************/
/// <summary>
/// 取後綴名
/// </summary>
/// <param name="filename">文件名
</param>
/// <returns>.gif|.html格式</returns>
public static string GetPostfixStr(string filename)
{
int start = filename.LastIndexOf(".");
int length = filename.Length;
string postfix = filename.Substring(start,
length - start);
return postfix;
}
#endregion
#region 寫文件
/****************************************
* 函數名稱:WriteFile
* 功能說明:當文件不存時,則創建文件,並追加文件
* 參 數:Path:文件路徑,Strings:文本內容
* 調用示列:
* string Path = Server.MapPath
("Default2.aspx");
* string Strings = "這是我寫
的內容啊";
* EC.FileObj.WriteFile
(Path,Strings);
*****************************************/
/// <summary>
/// 寫文件
/// </summary>
/// <param name="Path">文件路徑
</param>
/// <param name="Strings">文件內容
</param>
public static void WriteFile(string Path, string
Strings)
{
if (!System.IO.File.Exists(Path))
{
//Directory.CreateDirectory(Path);
System.IO.FileStream f =
System.IO.File.Create(Path);
f.Close();
f.Dispose();
}
System.IO.StreamWriter f2 = new
System.IO.StreamWriter(Path, true, System.Text.Encoding.UTF8);
f2.WriteLine(Strings);
f2.Close();
f2.Dispose();
}
#endregion
#region 讀文件
/****************************************
* 函數名稱:ReadFile
* 功能說明:讀取文本內容
* 參 數:Path:文件路徑
* 調用示列:
* string Path = Server.MapPath
("Default2.aspx");
* string s = EC.FileObj.ReadFile
(Path);
*****************************************/
/// <summary>
/// 讀文件
/// </summary>
/// <param name="Path">文件路徑
</param>
/// <returns></returns>
public static string ReadFile(string Path)
{
string s = "";
if (!System.IO.File.Exists(Path))
s = "不存在相應的目錄";
else
{
StreamReader f2 = new StreamReader(Path,
System.Text.Encoding.GetEncoding("gb2312"));
s = f2.ReadToEnd();
f2.Close();
f2.Dispose();
}
return s;
}
#endregion
#region 追加文件
/****************************************
* 函數名稱:FileAdd
* 功能說明:追加文件內容
* 參 數:Path:文件路徑,strings:內容
* 調用示列:
* string Path = Server.MapPath
("Default2.aspx");
* string Strings = "新追加內
容";
* EC.FileObj.FileAdd(Path,
Strings);
*****************************************/
/// <summary>
/// 追加文件
/// </summary>
/// <param name="Path">文件路徑
</param>
/// <param name="strings">內容
</param>
public static void FileAdd(string Path, string strings)
{
StreamWriter sw = File.AppendText(Path);
sw.Write(strings);
sw.Flush();
sw.Close();
sw.Dispose();
}
#endregion
#region 拷貝文件
/****************************************
* 函數名稱:FileCoppy
* 功能說明:拷貝文件
* 參 數:OrignFile:原始文件,NewFile:新文件路徑
* 調用示列:
* string OrignFile =
Server.MapPath("Default2.aspx");
* string NewFile = Server.MapPath
("Default3.aspx");
* EC.FileObj.FileCoppy(OrignFile,
NewFile);
*****************************************/
/// <summary>
/// 拷貝文件
/// </summary>
/// <param name="OrignFile">原始文件
</param>
/// <param name="NewFile">新文件路徑
</param>
public static void FileCoppy(string OrignFile, string
NewFile)
{
File.Copy(OrignFile, NewFile, true);
}
#endregion
#region 刪除文件
/****************************************
* 函數名稱:FileDel
* 功能說明:刪除文件
* 參 數:Path:文件路徑
* 調用示列:
* string Path = Server.MapPath
("Default3.aspx");
* EC.FileObj.FileDel(Path);
*****************************************/
/// <summary>
/// 刪除文件
/// </summary>
/// <param name="Path">路徑
</param>
public static void FileDel(string Path)
{
File.Delete(Path);
}
#endregion
#region 移動文件
/****************************************
* 函數名稱:FileMove
* 功能說明:移動文件
* 參 數:OrignFile:原始路徑,NewFile:新文件路徑
* 調用示列:
* string OrignFile =
Server.MapPath("../說明.txt");
* string NewFile =
Server.MapPath("http://www.cnblogs.com/說明.txt");
* EC.FileObj.FileMove(OrignFile,
NewFile);
*****************************************/
/// <summary>
/// 移動文件
/// </summary>
/// <param name="OrignFile">原始路徑
</param>
/// <param name="NewFile">新路徑
</param>
public static void FileMove(string OrignFile, string
NewFile)
{
File.Move(OrignFile, NewFile);
}
#endregion
#region 在當前目錄下創建目錄
/****************************************
* 函數名稱:FolderCreate
* 功能說明:在當前目錄下創建目錄
* 參 數:OrignFolder:當前目錄,NewFloder:新目錄
* 調用示列:
* string OrignFolder =
Server.MapPath("test/");
* string NewFloder =
"new";
* EC.FileObj.FolderCreate
(OrignFolder, NewFloder);
*****************************************/
/// <summary>
/// 在當前目錄下創建目錄
/// </summary>
/// <param name="OrignFolder">當前目錄
</param>
/// <param name="NewFloder">新目錄
</param>
public static void FolderCreate(string OrignFolder,
string NewFloder)
{
Directory.SetCurrentDirectory(OrignFolder);
Directory.CreateDirectory(NewFloder);
}
}