文件与注册表

在C#语言中进行文件操作时,用户也不需要关心文件的具体存储格式。只要利用.NET框架结构所封装的对文件操作的统一外部接口,就可以保证程序在不同的文件系统上能够良好地移植。

 .NET框架结构在System.IO名称空间中提供了多种类型,用于进行数据文件和数据流的读写操作。这些操作可以同步进行,也可以异步进行。

文件是指在各种存储介质上(例如可移动磁盘、硬盘、CD等)永久存储的数据的有序集合,它是进行数据读写操作的基本对象。

流是字节序列的抽象概念,例如文件、输入/输出设备、内部进程通信管道或者TCP/IP 套接字。

流涉及三种基本操作:

 (1) 读取:从流到数据结构(如字节数组)的数据传输。

  (2) 写入:从数据结构到流的数据传输。

  (3) 查找:对流内的当前位置进行查询和修改。 

.NET框架结构在名称空间System.IO中提供了Directory类来进行目录管理。利用Directory类可以完成进行创建、移动、浏览目录(或子目录)等操作,甚至还可以定义隐藏目录和只读目录。

Directory类是一个密封类,它的所有方法都是静态的,因而不必具有目录的实例就可直接调用。

Directory类的常用方法如下:

(1) CreateDirectory方法:创建子目录

(2) Delete方法:删除目录及其内容

(3) GetCurrentDirectory():获取应用程序的当前工作目录

File类,其常用方法包括:

Create()方法:用于新建一个文件 。
打开文件,包括:Open、OpenRead、OpenText 等
Copy()方法:用于复制一个文件
Delete()方法:用于删除一个文件
Move()方法:用于移动一个文件

FileStream类,其常用属性包括:

(1) CanRead:决定当前文件流是否支持文件读取操作;

(2) CanSeek:决定当前文件流是否支持文件移动操作;

(3) CanWrite:决定当前文件流是否支持文件写入操作;

(4) Length:获取用字节表示的文件流的长度;

(5) Position:获取或设置文件流的当前位置。

FileStream类,其常用方法包括:

(1) Close方法:用于关闭文件流    

(2) Read方法:实现文件流的读取

(3) ReadByte方法:用于从文件流中读取一个字节的数据

(4) Write方法:负责将数据写入到文件中 

(5) WriteByte方法:用于向文件流中写入一个字节的数据

(6) Flush方法 :负责将保存在缓冲区中的所有数据真正写入到文件中

 

注册表即是在Windows中用于存储有关计算机配置信息的数据库。注册表中包含了关于计算机运行方式的配置信息,其中包括Windows操作系统配置信息、应用程序配置信息、专用用户设备配置信息、环境配置信息等。

 Microsoft提供给用户一个用于编辑注册表的工具Regedit,它具有对注册表进行操作的强大功能。 

 注册表是一个庞大的数据库,其中的每一主键,每一键值都赋予了不同的功能。

.NET框架结构在Microsoft.Win32名称空间内提供了两个类用于注册表操作:Registry和RegistryKey。这两个类都是密封类,不允许被其它类继承。在这两个类中,定义了许多关于注册表操作的方法和属性,通过调用这两个类,就可以在Visual C#中轻松处理关于注册表的各种操作了。

 

l  Registry类
Registry类用于提供访问注册表中的值和子键的基Registrykeys。该类中封装了7个公有的静态域,分别代表Windows注册表中的7个基本主键,具体如下所示:

(1) ClassesRoot

该域用于读取Windows注册表中的基本主键HKEY_CLASSES_ROOT。定义文档的类型(或类)以及与那些类型关联的属性。

(2) CurrentConfig:该域用于读取Windows注册表中的基本主键HKEY_CURRENT_CONFIG,其中包含有关非用户特定的硬件配置信息。

(3) CurrentUser:该域用于读取Windows注册表中的基本主键HKEY_CURRENT_USER,其中包含有关当前用户首选项的信息。

(4) DynData:该域用于读取Windows注册表中的基本主键HKEY_DYN_DATA,其中包含动态注册表数据。

(5) LocalMachine:该域用于读取Windows注册表中的基本主键HKEY_LOCAL_MACHINE,其中包含本地计算机的配置数据。

(6) PerformanceData:该域用于读取Windows注册表中的基本主键HKEY_PERFORMANCE_DATA,其中包含软件组件的性能信息。

(7) Users:该域用于读取Windows注册表中的基本主键HKEY_USERS,其中包含有关默认用户的配置信息。

l  RegistryKey类

RegistryKey类表示Windows注册表中的子键。该类中封装了对Windows系统注册表的基本操作,包括对注册表信息的读取、删除、修改和重命名等,RegistryKey类中的一些常用方法有:

(1) CreateSubKey方法

(2) SetValue方法

(3) OpenSubKey方法

(4) OpenRemoteBaseKey方法

(5) DeleteSubKey方法

(6) DeleteSubKeyTree方法 

(7) DeleteValue方法

(8) GetValue方法

posted @ 2012-02-11 19:58  ·1234567890  阅读(280)  评论(0)    收藏  举报