[原创]Asp.net对文件夹和文件的操作类

参考了一些资料,写了一个文件操作类和大家分享,有问题的地方请大家多多指教 .

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.IO;

namespace REC
{
    
/// <summary>
    
/// FileControl 的摘要说明
    
/// </summary>

    public class FileControl
    
{
        
public FileControl()
        
{
            
//
            
// TODO: 在此处添加构造函数逻辑
            
//
        }


        
/// <summary>
        
/// 判断是否存在指定文件
        
/// </summary>
        
/// <param name="Path"></param>
        
/// <param name="FileName"></param>

        public void IsCreateFile(string Path)
        
{
            
if(Directory.Exists(Path))
            
{}
            
else
            
{
                FileInfo CreateFile 
= new FileInfo(Path);         //创建文件 
                if (!CreateFile.Exists)
                
{
                    FileStream FS 
= CreateFile.Create();
                    FS.Close();
                }

            }

        }

        
/// <summary> 
        
/// 在根目录下创建文件夹 
        
/// </summary> 
        
/// <param name="FolderPath">要创建的文件路径</param> 

        public void CreateFolder(string FolderPathName)
        
{
            
if (FolderPathName.Trim().Length > 0)
            
{
                
try
                
{
                    
string CreatePath = System.Web.HttpContext.Current.Server.MapPath("../../../Images/" + FolderPathName).ToString();
                    
if (!Directory.Exists(CreatePath))
                    
{
                        Directory.CreateDirectory(CreatePath);
                    }

                }

                
catch
                
{
                    
throw;
                }

            }

        }


        
/// <summary> 
        
/// 删除一个文件夹下面的字文件夹和文件 
        
/// </summary> 
        
/// <param name="FolderPathName"></param> 

        public void DeleteChildFolder(string FolderPathName)
        
{
            
if (FolderPathName.Trim().Length > 0)
            
{
                
try
                
{
                    
string CreatePath = System.Web.HttpContext.Current.Server.MapPath(FolderPathName).ToString();
                    
if (Directory.Exists(CreatePath))
                    
{
                        Directory.Delete(CreatePath, 
true);
                    }

                }

                
catch
                
{
                    
throw;
                }

            }

        }


        
/// <summary> 
        
/// 删除一个文件 
        
/// </summary> 
        
/// <param name="FilePathName"></param> 

        public void DeleteFile(string FilePathName)
        
{
            
try
            
{
                FileInfo DeleFile 
= new FileInfo(System.Web.HttpContext.Current.Server.MapPath(FilePathName).ToString());
                DeleFile.Delete();
            }

            
catch
            
{
            }

        }

        
public void CreateFile(string FilePathName)
        
{
            
try
            
{
                
//创建文件夹 
                string[] strPath = FilePathName.Split('/');
                CreateFolder(FilePathName.Replace(
"/" + strPath[strPath.Length - 1].ToString(), "")); //创建文件夹 
                FileInfo CreateFile = new FileInfo(System.Web.HttpContext.Current.Server.MapPath(FilePathName).ToString());         //创建文件 
                if (!CreateFile.Exists)
                
{
                    FileStream FS 
= CreateFile.Create();
                    FS.Close();
                }

            }

            
catch
            
{
            }

        }

        
/// <summary> 
        
/// 删除整个文件夹及其字文件夹和文件 
        
/// </summary> 
        
/// <param name="FolderPathName"></param> 

        public void DeleParentFolder(string FolderPathName)
        
{
            
try
            
{
                DirectoryInfo DelFolder 
= new DirectoryInfo(System.Web.HttpContext.Current.Server.MapPath(FolderPathName).ToString());
                
if (DelFolder.Exists)
                
{
                    DelFolder.Delete();
                }

            }

            
catch
            
{
            }

        }

        
/// <summary> 
        
/// 在文件里追加内容 
        
/// </summary> 
        
/// <param name="FilePathName"></param> 

        public void ReWriteReadinnerText(string FilePathName, string WriteWord)
        
{
            
try
            
{
                
//建立文件夹和文件 
                
//CreateFolder(FilePathName); 
                CreateFile(FilePathName);
                
//得到原来文件的内容 
                FileStream FileRead = new FileStream(System.Web.HttpContext.Current.Server.MapPath(FilePathName).ToString(), FileMode.Open, FileAccess.ReadWrite);
                StreamReader FileReadWord 
= new StreamReader(FileRead, System.Text.Encoding.Default);
                
string OldString = FileReadWord.ReadToEnd().ToString();
                OldString 
= OldString + WriteWord;
                
//把新的内容重新写入 
                StreamWriter FileWrite = new StreamWriter(FileRead, System.Text.Encoding.Default);
                FileWrite.Write(WriteWord);
                
//关闭 
                FileWrite.Close();
                FileReadWord.Close();
                FileRead.Close();
            }

            
catch
            
{
                
//    throw; 
            }

        }


        
/// <summary> 
        
/// 在文件里追加内容 
        
/// </summary> 
        
/// <param name="FilePathName"></param> 

        public string ReaderFileData(string FilePathName)
        
{
            
try
            
{

                FileStream FileRead 
= new FileStream(System.Web.HttpContext.Current.Server.MapPath(FilePathName).ToString(), FileMode.Open, FileAccess.Read);
                StreamReader FileReadWord 
= new StreamReader(FileRead, System.Text.Encoding.Default);
                
string TxtString = FileReadWord.ReadToEnd().ToString();
                
//关闭 
                FileReadWord.Close();
                FileRead.Close();
                
return TxtString;
            }

            
catch
            
{
                
throw;
            }

        }

        
/// <summary> 
        
/// 读取文件夹的文件 
        
/// </summary> 
        
/// <param name="FilePathName"></param> 
        
/// <returns></returns> 

        public DirectoryInfo checkValidSessionPath(string FilePathName)
        
{
            
try
            
{
                DirectoryInfo MainDir 
= new DirectoryInfo(System.Web.HttpContext.Current.Server.MapPath(FilePathName));
                
return MainDir;

            }

            
catch
            
{
                
throw;
            }

        }
 
    }

}

posted @ 2006-05-06 17:47  Hermes.Liu  阅读(1411)  评论(2编辑  收藏  举报