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

 更新时间:2015年04月18日 12:31:19   作者:work24  
这篇文章主要介绍了C#判断指定分区是否是ntfs格式的方法,涉及C#中DriveFormat属性的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下

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

相关文章

  • unity通过Mesh网格绘制图形球体

    unity通过Mesh网格绘制图形球体

    这篇文章主要为大家详细介绍了unity通过Mesh网格绘制图形球体,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-11-11
  • C#提取网页中超链接link和text部分的方法

    C#提取网页中超链接link和text部分的方法

    这篇文章主要介绍了C#提取网页中超链接link和text部分的方法,涉及C#正则表达式及字符串操作相关技巧,需要的朋友可以参考下
    2016-02-02
  • unity shader实现玻璃折射效果

    unity shader实现玻璃折射效果

    这篇文章主要为大家详细介绍了unity shader实现玻璃折射效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-04-04
  • 深入理解C#中的Delegate

    深入理解C#中的Delegate

    委托是一种安全地封装方法的类型,它与 C 和 C++ 中的函数指针类似。与 C 中的函数指针不同,委托是面向对象的、类型安全的和保险的。委托的类型由委托的名称定义
    2016-07-07
  • C#实现生成所有不重复的组合功能示例

    C#实现生成所有不重复的组合功能示例

    这篇文章主要介绍了C#实现生成所有不重复的组合功能,涉及C#数学运算中组合数运算的相关原理应用操作技巧,需要的朋友可以参考下
    2017-12-12
  • Unity实现虚拟摇杆效果

    Unity实现虚拟摇杆效果

    这篇文章主要为大家详细介绍了Unity实现虚拟摇杆效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-04-04
  • C#中ref关键字的用法

    C#中ref关键字的用法

    这篇文章介绍了C#中ref关键字的用法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • C#中把Datatable转换为Json的5个代码实例

    C#中把Datatable转换为Json的5个代码实例

    这篇文章主要介绍了C#中把Datatable转换为Json的5个代码实例,需要的朋友可以参考下
    2014-04-04
  • C#实现数组元素的数据类型转换方法详解

    C#实现数组元素的数据类型转换方法详解

    这篇文章主要为大家介绍了C#中一维数组如何快速实现数组元素的数据类型的转换,文中的示例代码讲解详细,感兴趣的小伙伴可以了解一下
    2022-04-04
  • C#中Try-Catch语句真的影响程序性能吗?

    C#中Try-Catch语句真的影响程序性能吗?

    这篇文章主要介绍了C#中Try-Catch语句真的影响程序性能吗?本文结合IL分析Try-Catch语句的性能问题,需要的朋友可以参考下
    2015-06-06

最新评论