1.       Environment

Environment类是System命名空间的一部分,他包含的属性和方法可以获取当前程序所在系统的信息、当前登录到系统的用户信息和用于保存当前系统环境信息的环境变量除了关于这些环境变量信息之外,用Environment类还能提取命令参数、退出代码、调用堆栈的内容、自从上次系统启用以来的所有经历时间、运行的CLR的版本等等。

成员

功能

CurrentDirectory

取得(何设置)当前目录全程和路径的属性

GetFolderPath

取得Environments.SpecialFolder枚举中标识的特殊文件夹全称路径的方法

GetLogincalDirves

返回包含当前系统中逻辑驱动器名称的字符串数组的方法

SystemDirectroy

取得系统目录全程的属性

表一 与文件和目录相关的Environments类成员

常量

特殊文件夹描述

ApplicationData

目录,用于当前漫游用户的应用程序特定数据的公共存储库

CommonApplicationData

目录,用于所有用户使用的应用程序特定数据的公共存储库

CommonProgranFiles

用于应用程序之间共享的组件的目录

Cookies

用于Internet Cookiede公共存储库的目录

DesktopDirectory

用于物理的存储桌面导航显示的文件对象的目录

Favorites

用于用户收藏夹项的公共存储库的目录

History

用于Internet历史纪录项的公共存储库德目录

InternetCache

用于Internet临时文件的公共存储库的目录

LocalApplicationData

目录,用于当前非漫游用户使用的应用程序特定数据的公共存储库

Personal

用于文档的公共存储的目录(我的文档)

ProgramFiles

Program Files”的目录

Programs

包含用户程序组的目录

Recent

包含用户最近使用过的文档的目录

SendTo

包含“发送到”菜单的目录

StartMenu

包含“开始”菜单的目录

Startup

对用于用户的“启动”菜单项目的目录

System

System”目录

Templates

用于文档模板的公共存储库德目录

表二 Envrionment.SpecialFolder枚举值

DEMO

private void btnMyDocs_Click(object sender, System.EventArgs e)

     {

         try

         {

                        this.txtStartDir.Text=Environment.GetFolderPath(Environment.SpecialFolder.Personal);

         }

         catch(Exception Err)

         {

              MessageBox.Show(Err.Message);

         }

}

2.       Path

Path类在System.IO命名空间中定义。

方法

功能

ChangeExtension

更改路径字符串的扩展名

Combine

将左边的路径名与右边的路径名或文件名合并在一起。这个操作就像字符串串联,但是不用担心左边部分是否是一反斜杠结尾、或者右边部分是否已反斜杠开头

GetDirectroyName

返回指定路径字符串的目录信息

GetExtension

返回指定的路径字符串的扩展名

GetFileName

返回指定路径字符串的文件名和扩展名

GetFileName-

WithoutExtension

返回不具有扩展名的指定路径字符串的文件名

GetFullPath

返回指定路径字符串的绝对路径

GetPathRoot

获取指定路径的根目录信息

GetTempFileName

返回唯一临时文件名,不再磁盘上通过该名称创建零字节文件

GetTempPath

返回当前系统的临时文件夹的路径

HasExtension

确定路径是否包括文件扩展名

IsPathRooted

获取一个值,该值指示指定的路径字符串是包含绝对路径信息还是包含相对路径信息

表三 Path类的方法

3.       Directory类和File

方法

功能

CreateDirectory

创建目录或子目录

Delete

删除目录和及其内容

Exists

返回布尔值,判断给定路径是否引用磁盘上的现有目录

GetCreationTime

获得目录的创建时间和日期

GetCurrentDirectory

获取应用程序的当前工作目录

GetDirectories

获取指定目录中子目录的名称

GetDirectoryRoot

返回指定路径的卷信息,更信息或两者同时返回

GetFiles

返回指定目录中的文件的名称

GetFileSystemEntries

返回指定目录中所有文件和子目录的名称

GetLastAccessTime

返回最后一次访问指定文件或目录的日期和时间

GetLastWriteTime

返回最后一次写入指定文件或目录的日期和时间

GetLogicalDrives

检索当前计算机上格式为“<驱动器字母号>:\”的逻辑驱动器的名称

GetParent

检索制等路径的父目录,包括绝对路径和相对路径

Move

将文件会目录及其内容移到指定位置

SetCreationTime

为指定的文件或目录设置创建实践和日期

SetCreationDirectory

将应用程序的当前工作目录设置为指定的目录

方法

功能

SetLastAccessTime

设置最后一次访问指定文件或目录的日期和时间

SetLastWriteTime

设置作后一次写入目录的日期和时间

表四 Dierctory类的静态方法

成员

功能描述

Attributes

属性,获取或设置当前FileSystemInfoFileAttributes

CreationTime

属性,获取会设置当前的FileSystemInfo对象的创建时间

Create

方法,创建目录

CreateSubdirectory

方法。创建一个或多个子目录

Delete

方法,从路径中删除DirectoryInfo实例是否应用也磁盘上实际存在的目录

Exists

属性,返回布尔值指示DirectoryInfo实例是否对应于磁盘上实际存在的目录

Extension

属性,获取表示文件扩展名部分呢的字符串

FullName

属性,获取目录或文件的完整路径

GetDirectories

方法,返回当前目录的子目录

GetFiles

方法,返回保存了当前目录文件列表的FileInfo对象数组

GetFileSystemInfos

方法,检索强类型FileSystemInfo对象的数组

LastAccessTime

属性,获取或设置最后一次访问当前文件或目录的时间

LastWriteTime

属性,获取或设置最后一次写入当前文件或目录的时间

MoveTo

方法,将DirectoryInfo实例及其内容移动到新路径

Parent

属性,获取指定子目录的父目录

Root

属性,获取路径的根部分

表五 DirectoryInfo类的部分实例成员

方法

功能描述

AppendText

创建一个StreamWriter,它将文本追加到现有文件中

Copy

复制文件

Create

在指定的全称路径中创建文件

CreateText

创建或打开一个新文件用于写入文本

Delete

删除有全称路径指定的文件

Exists

确定指定的文件是否存在

GetAttributes

获取全称路径上的FileAttributes

GetCreationTime

返回指定文件或目录的创建时间和日期

GetLastAccessTime

返回最后一次访问指定文件或目录的日期和时间

GetLastWriteTime

返回最后一次写入指定文件或目录的日期和时间

Move

将指定路径上的文件移动到新的位置

Open

打开指定路径导航的FileStream

OpenRead

打开现有文件以进行读取

OpenText

打开现有文本文件以进行读取

OPenWrite

打开现有文件以进行写入

SetAttributes

设置指定路径上文件的指定FileAttributes

SetCreationTime

设置带文件创建的日期和时间

SetlastAccessTime

设置作后一次反问指定文件的日期和时间

SetLastWriteTime

设置最后一次写入指定文件的日期和时间

表六 File类的静态方法

成员

功能描述

AppendText

方法,创建一个StreamWriter,用它向文件追加文本

Attributes

属性,获取或设置表示文件属性的FileAttributes对象

CopyTo

方法,将现有文件复制到新文件

Create

方法,创建文件

CreateText

方法,创建写入新文本文件的StreamWriter

CreationTime

属性,获取或设置当前对象的创建时间

Delete

方法,永久删除文件

Directory

属性,获取父目录的实例

DirectoryName

属性,获取表示目录的完整路径的字符串

Exists

属性,获取指示文件是否存在布尔值

Extension

属性,获取表示文件扩展名部分的字符串

FullName

属性,获取文件或目录的完整路径

LastAccessTime

属性,获取或设置作后一次访问当前文件的时间

LastWriteTime

属性,获取或设置作后一次写入当前文件或目录的时间

Length

属性,获取当前文件或目录的大小

MoveTo

方法,将指定文件移动新位置,并提供指定新文件名的选项

Open

方法,用各种读/写访问权限和共享特权打开文件

OpenRead

方法,创建只读的FileStream

OpenText

方法,创建从文本文件进行读取的StreamReader

OpenWrite

方法,创建只写FileStream

表七 FileInfo类的部分实例成员

4.       在目录中寻找文件

5.       使用初始化信息

这一类信息通常存在key=value形式的键/值队中。

6.       使用注册表

  

字段

等价的注册表键

典型应用

ClassesRoot

HKEY_CLASSES_ROOT

定义文档的类型以及与那些类型关联的属性

CurrentConfig

HKEY_CURRENT_CONFIG

每个系统的本地硬件配置信息

CurrentUser

HKEY_CURRENT_USER

每个用户的首选项信息

DynData

HEKY_DYN_DATA

动态数据,例如虚拟设备驱动器气功的实时信息

LocalMchine

HEKY_LOCAL_MACHINE

每个系统的本地配置信息

PerformanceData

HEKY_PERFORMANCE_DATA

每个应用程序的性能计数器

Users

HKEY_USERS

包含本地系统中的每个用户分支以及新建用户的默认用户设置

表八 Registry类的字段

   private void btnSave_Click(object sender, System.EventArgs e)

         {

              try

              {

                   thekey =Registry.CurrentUser;

                   thekey=thekey.CreateSubKey("SybexCSharp");

                   thekey.SetValue(txtKey.Text,txtValue.Text);

              }

              catch(Exception Err)

              {

                   MessageBox.Show(Err.Message);

              }

              finally

              {

                   thekey.Close();

              }

         }

 

         private void btnRetrieve_Click(object sender, System.EventArgs e)

         {

              if(this.txtKey.Text!=string.Empty)

              {

                   try

                   {

                       this.txtValue.Text=string.Empty;

                       thekey=Registry.CurrentUser;

                       thekey=thekey.CreateSubKey("SybexCSharp");

                       this.txtValue.Text=(string)thekey.GetValue(this.txtKey.Text,string.Empty);

                   }

                   catch(Exception Err)

                   {

                       MessageBox.Show(Err.Message);

                   }

                   finally

                   {

                       thekey.Close();

                       if(this.txtValue.Text==string.Empty)

                       {

                            this.txtValue.Text="Could not get value!";

                       }

                   }

              }

         }

posted on 2006-05-06 16:25  wkjs  阅读(181)  评论(0编辑  收藏  举报