您的位置:首页 > 编程语言 > C#

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

2015-04-18 12:31 1316 查看

本文实例讲述了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#程序设计有所帮助。

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  C# 分区 格式