Utilities

Sample code for basic directory & file manipulation.

Download fsutils.zip

Synopsis:

fsutils.cs
fsutils_test.cs


fsutils.cs

Synopsis
using System.IO;

public class FSUtils
{
  public void CreateEmptyFile(string path)
  {
    if (FileExists(path)) return;
    File.Create(path).Close();
  }
  public void DelFile(string path) 
  {
    if (!FileExists(path)) return;
    File.Delete(path); 
  }
  public void CreateDir(string path)
  {
    if (DirExists(path)) return;
    Directory.CreateDirectory(path);
  }
  public void DelDirTree(string path)
  {
    if (!DirExists(path)) return;
    Directory.Delete(path, true);
  }
  public bool DirExists(string path)
  {
    return Directory.Exists(path);
  }
  public bool FileExists(string path)
  {
    return File.Exists(path);
  }
}


fsutils_test.cs

Synopsis
using System;
using ut;

public class testfsutils
{
  static readonly string testpath = @"d:\projects\test\fsutils";

  public void test_fsUtils_dirs()
  {
    FSUtils fsu = new FSUtils();
    fsu.DelDirTree(testpath);
    utx.assert(!fsu.DirExists(testpath));
    fsu.CreateDir(testpath);
    utx.assert(fsu.DirExists(testpath));
    fsu.DelDirTree(testpath);
    utx.assert(!fsu.DirExists(testpath));
  }
  
  public void test_fsUtils_subdirs()
  {
    FSUtils fsu = new FSUtils();
    fsu.DelDirTree(testpath);
    utx.assert(!fsu.DirExists(testpath));
  
    string sub1 = testpath + "\\sub1";
    string sub2 = testpath + "\\sub2";
    fsu.CreateDir(testpath);
    fsu.CreateDir(sub1);
    fsu.CreateDir(sub2);
    utx.assert(fsu.DirExists(sub1));
    utx.assert(fsu.DirExists(sub2));
  
    fsu.DelDirTree(testpath);
    utx.assert(!fsu.DirExists(testpath));
  }
  
  public void test_fsUtils_files()
  {
    FSUtils fsu = new FSUtils();
    fsu.DelDirTree(testpath);
    fsu.CreateDir(testpath);
    utx.assert(fsu.DirExists(testpath));
    string filepath = testpath + "\\" + "test1.txt";
    fsu.CreateEmptyFile(filepath);
    utx.assert(fsu.FileExists(filepath));
    fsu.DelFile(filepath);
    utx.assert(!fsu.FileExists(filepath));
  
    fsu.DelDirTree(testpath);
    utx.assert(!fsu.DirExists(testpath));
    utx.assert(!fsu.FileExists(filepath));
  }

  public void test_fsUtils_dupDelDirTree()
  {
    FSUtils fsu = new FSUtils();
    fsu.DelDirTree(testpath);
    fsu.DelDirTree(testpath);
    utx.assert(!fsu.DirExists(testpath));
  }

  public void test_fsUtils_dupCreateDir()
  {
    FSUtils fsu = new FSUtils();
    fsu.DelDirTree(testpath);
    utx.assert(!fsu.DirExists(testpath));

    fsu.CreateDir(testpath);
    utx.assert(fsu.DirExists(testpath));
    fsu.CreateDir(testpath);
    utx.assert(fsu.DirExists(testpath));
  }

  public void test_fsUtils_dupCreateFile()
  {
    FSUtils fsu = new FSUtils();
    fsu.DelDirTree(testpath);
    fsu.CreateDir(testpath);
    utx.assert(fsu.DirExists(testpath));

    string filepath = testpath + "\\" + "test2.txt";
    fsu.CreateEmptyFile(filepath);
    utx.assert(fsu.FileExists(filepath));
    fsu.CreateEmptyFile(filepath);
    utx.assert(fsu.FileExists(filepath));
  }

  public void test_fsUtils_dupDelFile()
  {
    FSUtils fsu = new FSUtils();
    fsu.DelDirTree(testpath);
    fsu.CreateDir(testpath);
    utx.assert(fsu.DirExists(testpath));

    string filepath = testpath + "\\" + "test3.txt";
    fsu.CreateEmptyFile(filepath);
    utx.assert(fsu.FileExists(filepath));

    fsu.DelFile(filepath);
    utx.assert(!fsu.FileExists(filepath));
    fsu.DelFile(filepath);
    utx.assert(!fsu.FileExists(filepath));
  }
}







Contact me about content on this page using john_web-at-arrizza-dot-com
For Web Master or site problems contact: webadmin-at-arrizza-dot-com
Copyright John Arrizza (c) 2001-2010