C#判断指定分区是否是ntfs格式的方法


本文实例讲述了C#判断指定分区是否是ntfs格式的方法。分享给大家供大家参考。具体如下:

using System;
using System.IO;
namespace RobvanderWoude
{
 class IsNTFS
 {
  public static int Main( string[] args )
  {
   try
   {
    if ( args.Length == 0 )
    {
     return WriteError( string.Empty );
    }
    if ( args.Length > 1 )
    {
     return WriteError( "Invalid number of arguments." );
    }
     string drive = args[0].ToUpper( );
     DriveInfo[] allDrives = DriveInfo.GetDrives( );
     foreach ( DriveInfo drv in allDrives )
    {
     if ( drive == drv.Name.Substring( 0, 2 ) )
     {
      if ( drv.IsReady )
      {
       Console.WriteLine( drv.DriveFormat.ToUpper( ) );
       if ( drv.DriveFormat == "NTFS" )
       {
        return 0;
       }
       else
       {
        return 2;
       }
      }
      else
      {
       Console.WriteLine( drv.DriveType.ToString( ).ToUpper( ) );
       return 1;
      }
     }
    }
    return WriteError( "Invalid drive specification." );
   }
   catch ( Exception e )
   {
    // Display help text with error message
    return WriteError( e );
   }
  }
  // Code to display help and optional error message, 
  //by Bas van der Woude
  public static int WriteError( Exception e )
  {
   return WriteError( e == null ? null : e.Message );
  }
   public static int WriteError( string errorMessage )
  {
   string fullpath = Environment.GetCommandLineArgs().GetValue(0).ToString();
   string[] program = fullpath.Split( '\\' );
   string exeName = program[program.GetUpperBound( 0 )];
   exeName = exeName.Substring( 0, exeName.IndexOf( '.' ) );
    if ( string.IsNullOrEmpty( errorMessage ) == false )
   {
    Console.Error.WriteLine( );
    Console.ForegroundColor = ConsoleColor.Red;
    Console.Error.Write( "ERROR: " );
    Console.ForegroundColor = ConsoleColor.White;
    Console.Error.WriteLine( errorMessage );
    Console.ResetColor( );
   }
    Console.Error.WriteLine( );
   Console.Error.WriteLine( "IsNTFS, Version 1.00" );
   Console.Error.WriteLine( "Return 'errorlevel' 0 if the specified drive is NTFS formated" );
   Console.Error.WriteLine( );
   Console.Error.Write( "Usage:  " );
   Console.ForegroundColor = ConsoleColor.White;
   Console.Error.WriteLine( "{0} drive:", exeName.ToUpper( ) );
   Console.ResetColor( );
   Console.Error.WriteLine( );
   Console.Error.WriteLine( "Note:   Returns 0 if NTFS, 2 if not, 1 if not ready or invalid." );
   Console.Error.WriteLine( );
   Console.Error.WriteLine( "Written by Rob van der Woude" );
   return 1;
  }
 }
}

希望本文所述对大家的C#程序设计有所帮助。


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3