现在的位置: 主页 > 在线留言 > 文章列表

Asp.net(c#)常用文件操作类封装 移动 复制 删除 上传

作者:北京东方雨泽科技有限公司 来源:www.dfyz6789.com 发布时间:2017-09-05 12:28:44
 

Asp.net(c#)常用文件操作类封装 移动 复制 删除 上传 下载等 [csharp]

using System;

using System.Configuration;

using System.Data;

using System.IO;

using System.Text;

using System.Threading;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.HtmlControls;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

namespace MSCL

{

/// <summary>

/// 文件或文件夹操作类

/// </summary>

public class FileHelper

{

#region 构造函数

private bool _alreadyDispose = false;

/// <summary>

/// 释放资源返回bool

/// </summary>

/// <param name="isDisposing"></param>

protected virtual void Dispose(bool isDisposing)

{

if (_alreadyDispose) return;

//if (isDisposing)

//{

// if (xml != null)

// {

// xml = null;

// }

//}

_alreadyDispose = true;

}

#endregion

#region IDisposable 成员

/// <summary>

/// 释放资源

/// </summary>

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("../../说明.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);

}

/// <summary>

/// 创建文件夹

/// </summary>

/// <param name="Path"></param>

public static void FolderCreate(string Path)

{

// 判断目标目录是否存在如果不存在则新建之

if (!Directory.Exists(Path))

Directory.CreateDirectory(Path);

}

#endregion

#region 创建目录

/// <summary>

/// 创建目录

/// </summary>

/// <param name="Path"></param>

public static void FileCreate(string Path)

{

FileInfo CreateFile = new FileInfo(Path); //创建文件

if (!CreateFile.Exists)

{

FileStream FS = CreateFile.Create();

FS.Close();

}

}

#endregion

#region 递归删除文件夹目录及文件

/****************************************

* 函数名称:DeleteFolder

* 功能说明:递归删除文件夹目录及文件

* 参 数:dir:文件夹路径

* 调用示列:

* string dir = Server.MapPath("test/");

* EC.FileObj.DeleteFolder(dir);

*****************************************/

/// <summary>

/// 递归删除文件夹目录及文件

/// </summary>

/// <param name="dir"></param>

/// <returns></returns>

public static void DeleteFolder(string dir)

{

if (Directory.Exists(dir)) //如果存在这个文件夹删除之

{

foreach (string d in Directory.GetFileSystemEntries(dir))

{

if (File.Exists(d))

企业建站2800元起,携手武汉肥猫科技,做一个有见地的颜值派!更多优惠请戳:武汉网页制作 http://www.feimao666.com

  • 上一篇:微创新战胜同行赢得用户
  • 下一篇:最后一页
  •