当前位置:主页 > 软件编程 > .NET代码 >

C#判断指定驱动器是否是Fat分区格式的方法

时间:2020-12-05 12:37:08 | 栏目:.NET代码 | 点击:

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

using System;
using System.IO;
namespace RobvanderWoude
{
 class IsFAT
 {
  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 == "FAT" || drv.DriveFormat == "FAT32")
       {
        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("IsFAT, Version 1.00");
   Console.Error.WriteLine("Return 'errorlevel' 0 if the specified drive is FAT or FAT32 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 FAT or FAT32, 2 if not, 1 if not ready or invalid.");
   Console.Error.WriteLine();
   Console.Error.WriteLine("Written by Rob van der Woude");
   return 1;
  }
 }
}

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

您可能感兴趣的文章:

相关文章