用Visual C#来清空回收站(1)

原创 2004年07月12日 04:50:00
标题 用Visual C#来清空回收站(1) willsound(转贴)

关键字 .net c#

出处 url.gifhttp://www.yesky.com/20011116/205481_1.shtml

Visual C#作为下一代主流的程序开发语言,其语言功能的强大是众所周知的。并且又有一个内容十分丰富的程序开发包--.Net FrameWork SDK,作为他的后盾。这样就使得Visual C#有了一个充分发挥其本领的舞台。Visual C#的强大功能不仅表现在支持各类数据库的数据处理方面,还表现对网络编程和文件处理等方面。

  视窗操作系统的回收站是对文件一种保护措施,他主要是作用是不言而喻的。在新的视窗2000系统之中,当我把文件删除到回收站中以后,按动"清空回收站"按钮,想清空回收站,此时往往提示"某某文件夹不为空,无法删除"的信息。所以只好全部恢复,然后到要删除的文件夹中,先删除里面的文件,后删除文件夹,这样才可以清空回收站。但这给我们操作系统带来了烦恼。本文就是利用Visual C#在处理文件方面的强大功能,来做一个软件,利用此软件来清空回收站里面的要删除的文件,从而解除这种烦恼。

  一.程序设计的主要思想

  我们知道视窗系统是把我们将要删除的文件信息都临时保存在"C:/Recycled"目录下面。在通过"清空回收站"按钮来彻底此目录下的要删除的文件的。本程序的主要思路就是根据以上知识得来的。具体说明如下:

  (1).首先判断C盘根目录下面的"Recycled"目录是否为空。

  (2).如果不为空的话,就遍历所有文件信息,并删除文件。

  二.程序设计和运行环境

  (1).视窗系统2000专业版本

  (2)..Net FrameWork SDK Beta 2
三.程序设计的主要步骤和具体解释

  (1).如何判断C盘根目录下面的"Recycled"目录是否为空。

  要判断"C:/Recycled"目录中是否有文件信息,要经过二个步骤,首先要确定找到此目录。其次才能够判断此目录是否为空。下面就按照这二个步骤来分别做具体介绍:

  i>.如何在程序中找到"C:/Recycled"目录。

  在.Net FrameWork SDK中封装了一个名称空间--System.IO。此名称空间中定义了许多与文件和目录处理相关的类、对象、属性和方法。Visual C#就是通过灵活调用这些资源来实现对文件和目录的具体操作的。本文中主要用到此名称空间中的二个类:Directory类和File类。前者在程序中主要用来处理和目录相关的操作的,如确定目录和获得目录中的文件信息。后者在程序中主要用来处理和文件相关的操作的,如删除文件。在程序中用到Directory类中的GetFiles ( "目录名称")方法,此方法的返回的是一个枚举型,此枚举型是由一组字符串组成。GetFiles()方法是把在目录中的每个文件名称都形成一个字符串,然后由这些字符串组成形成一个枚举类型。

  ii>.判断此目录是否为空。

  在此要介绍一下foreach语句,Visual C#是通过此语句来收集枚举的。在本文中是通过他来列举出在"C:/Recycled"存在的所有被删除的文件信息的。

int c = 0 ; // 定义此变量主要是来判断目录中是否有文件
foreach ( string s1 in Directory.GetFiles ( "c://recycled" ) ) // 返回文件名称字符串行时的枚举类型
{
 ++c ;
}
if ( c > 0 ) //判断是否存在文件如果 c > 0则回收站有文件,反之则没有
{
 …..
}

  (2).如果"C:/Recycled"目录中不为空的话,就遍历目录中的所有文件信息,并删除文件。

  在本段落里面要介绍一下MessageBox类的用法。用过VB和Delphi的人一定知道在此类程序设计语言中,显示提示信息是一件多么容易的事情。但在Visual C#中,这类操作显然相对繁琐些,但在灵活程度有了一定的提高。在Visual C#中,System.Windows.Forms名称空间中封装了一个MessageBox的类,在此类中又定义了与显示提示信息相关的一些方法(Show方法)、对象和属性。在本程序中就有关于MessageBox类的具体介绍。

  要删除磁盘上的文件就要使用到名称空间System.IO中File类的Delete ( )方法。Delete ( )方法后面跟的参数是文件所在磁盘的全路径名称。要获得文件的全路径名称,就还要使用到foreach语句,程序中就是foreach语句来从一个包含所有文件全路径名称的枚举类型中获得文件的全路径名称的。具体实现语句如下:

if ( c > 0 ) // 判断"C:/Recycled"目录中是否存在文件信息
{
 DialogResult r = MessageBox.Show ( "是否确定?" , "垃圾处理!" ,
         MessageBoxButtons.YesNo , MessageBoxIcon.Question ) ;
 // 显示"确定"和"取消"二个按钮,图标显示是一个问号。
 int ss=(int)r ;
 if ( ss==6 ) // 按动确定按钮
  { foreach ( string s in Directory.GetFiles ( "c://recycled" ) )
    // 把全路径名称房子 s中
   {
    File.Delete ( s ) ; //删除此文件
   }
  }
}
三.程序设计的主要步骤和具体解释

  (1).如何判断C盘根目录下面的"Recycled"目录是否为空。

  要判断"C:/Recycled"目录中是否有文件信息,要经过二个步骤,首先要确定找到此目录。其次才能够判断此目录是否为空。下面就按照这二个步骤来分别做具体介绍:

  i>.如何在程序中找到"C:/Recycled"目录。

  在.Net FrameWork SDK中封装了一个名称空间--System.IO。此名称空间中定义了许多与文件和目录处理相关的类、对象、属性和方法。Visual C#就是通过灵活调用这些资源来实现对文件和目录的具体操作的。本文中主要用到此名称空间中的二个类:Directory类和File类。前者在程序中主要用来处理和目录相关的操作的,如确定目录和获得目录中的文件信息。后者在程序中主要用来处理和文件相关的操作的,如删除文件。在程序中用到Directory类中的GetFiles ( "目录名称")方法,此方法的返回的是一个枚举型,此枚举型是由一组字符串组成。GetFiles()方法是把在目录中的每个文件名称都形成一个字符串,然后由这些字符串组成形成一个枚举类型。

  ii>.判断此目录是否为空。

  在此要介绍一下foreach语句,Visual C#是通过此语句来收集枚举的。在本文中是通过他来列举出在"C:/Recycled"存在的所有被删除的文件信息的。

int c = 0 ; // 定义此变量主要是来判断目录中是否有文件
foreach ( string s1 in Directory.GetFiles ( "c://recycled" ) ) // 返回文件名称字符串行时的枚举类型
{
 ++c ;
}
if ( c > 0 ) //判断是否存在文件如果 c > 0则回收站有文件,反之则没有
{
 …..
}

  (2).如果"C:/Recycled"目录中不为空的话,就遍历目录中的所有文件信息,并删除文件。

  在本段落里面要介绍一下MessageBox类的用法。用过VB和Delphi的人一定知道在此类程序设计语言中,显示提示信息是一件多么容易的事情。但在Visual C#中,这类操作显然相对繁琐些,但在灵活程度有了一定的提高。在Visual C#中,System.Windows.Forms名称空间中封装了一个MessageBox的类,在此类中又定义了与显示提示信息相关的一些方法(Show方法)、对象和属性。在本程序中就有关于MessageBox类的具体介绍。

  要删除磁盘上的文件就要使用到名称空间System.IO中File类的Delete ( )方法。Delete ( )方法后面跟的参数是文件所在磁盘的全路径名称。要获得文件的全路径名称,就还要使用到foreach语句,程序中就是foreach语句来从一个包含所有文件全路径名称的枚举类型中获得文件的全路径名称的。具体实现语句如下:

if ( c > 0 ) // 判断"C:/Recycled"目录中是否存在文件信息
{
 DialogResult r = MessageBox.Show ( "是否确定?" , "垃圾处理!" ,
         MessageBoxButtons.YesNo , MessageBoxIcon.Question ) ;
 // 显示"确定"和"取消"二个按钮,图标显示是一个问号。
 int ss=(int)r ;
 if ( ss==6 ) // 按动确定按钮
  { foreach ( string s in Directory.GetFiles ( "c://recycled" ) )
    // 把全路径名称房子 s中
   {
    File.Delete ( s ) ; //删除此文件
   }
  }
}

用Visual C#来清空回收站(1)

Visual C#作为下一代主流的程序开发语言,其语言功能的强大是众所周知的。并且又有一个内容十分丰富的程序开发包--.Net FrameWork SDK,作为他的后盾。这样就使得Visual C#有...
  • willsound
  • willsound
  • 2001-11-22 14:26:00
  • 941

C# 清空回收站程序

  • 2009年04月13日 00:44
  • 17KB
  • 下载

C#动态删除文件并清空回收站的演示程序

  • 2014年07月15日 20:15
  • 21KB
  • 下载

C# 系统应用之清空回收站操作

本文主要讲述的是如何通过C#代码实现清空回收站的资源.主要通过SHEmptyRecycleBin函数实现.主要讲解该函数的具体功能及参数含义,同时通过实例实现清空回收站.希望对大家有所帮助....
  • Eastmount
  • Eastmount
  • 2014-01-17 20:55:32
  • 3092

C# 演示如何清空系统回收站附源代码

  • 2010年03月03日 15:41
  • 14KB
  • 下载

用Visual C#来清空回收站(2)

四.程序的源代码(recycled.cs)、编译方法及运行后的界面:  (1).程序的源代码:recycled.cs:using System.IO ;using System.Windows.For...
  • willsound
  • willsound
  • 2001-11-22 14:27:00
  • 773

用Visual C#来清空回收站

Visual C#作为下一代主流的程序开发语言,其语言功能的强大是众所周知的。并且又有一个内容十分丰富的程序开发包--.Net FrameWork SDK,作为他的后盾。这样就使得Visual C#有...
  • fenghao_5555
  • fenghao_5555
  • 2007-02-15 18:51:00
  • 625

(转)用Visual C#来清空回收站

 Visual C#作为下一代主流的程序开发语言,其语言功能的强大是众所周知的。并且又有一个内容十分丰富的程序开发包--.Net FrameWork SDK,作为他的后盾。这样就使得Visual...
  • jianxia_wzx
  • jianxia_wzx
  • 2014-01-16 22:42:03
  • 1063

c#回收站相关函数

清空回收站,可调用SHEmptyRecycleBin 函数,在shell32.dll,dwFlags参数指定清空回收站时,是否显示提示操作的对话框?显示删除过程的进度条? 静音操作?注意:SHEmpt...
  • rfezgc
  • rfezgc
  • 2009-11-22 20:49:00
  • 1389

vnc下远端清空回收站trash

今天遇到vnc远端server的时候, 没有办法来清空整个trash,提示无法找到trash文件目录,ui界面下。 故而纪录下: 其实很简单...找到trash的目录,默认都为 ~/.local/sh...
  • u011534057
  • u011534057
  • 2016-12-21 10:50:29
  • 464
收藏助手
不良信息举报
您举报文章:用Visual C#来清空回收站(1)
举报原因:
原因补充:

(最多只允许输入30个字)