--------------------------------------------------Windows Phone 7手机开发,.NET培训,期待与您交流!-------------------------------------------------
首先要熟悉.NET中处理文件和文件夹的操作。File类和Directory类是其中最主要的两个类。了解它们将对后面功能的实现提供很大的便利。
本节先对和文件系统相关的两个.NET类进行简要介绍。
System.IO.File类和System.IO.FileInfo类主要提供有关文件的各种操作,在使用时需要引用System.IO命名空间。下面通过程序实例来介绍其主要属性和方法。
(1) 文件打开方法:File.Open ()
该方法的声明如下:
public static FileStream Open(string path,FileMode mode)
下面的代码打开存放在c:\temp目录下名称为newFile.txt文件,并在该文件中写入hello。
private void OpenFile()
{
FileStream.TextFile=File.Open(@"c:\temp\newFile.txt",FileMode.Append);
byte [ ] Info = {(byte)'h',(byte)'e',(byte)'l',(byte)'l',(byte)'o'};
TextFile.Write(Info,0,Info.Length);
TextFile.Close();
}
(2) 文件创建方法:File.Create()
该方法的声明如下:
public static FileStream Create(string path;)
下面的代码演示如何在c:\temp下创建名为newFile.txt的文件。
由于File.Create方法默认向所有用户授予对新文件的完全读/写访问权限,所以文件是用读/写访问权限打开的,必须关闭后才能由其他应用程序打开。为此,所以需要使用FileStream类的Close方法将所创建的文件关闭。
private void MakeFile()
{
FileStream NewText=File.Create(@"c:\temp\newFile.txt");
NewText.Close();
}
(3) 文件删除方法:File.Delete()
该方法声明如下:
public static void Delete(string path);
下面的代码演示如何删除c:\temp目录下的newFile.txt文件。
private void DeleteFile()
{
File.Delete(@"c:\temp\newFile.txt");
}
(4) 判断文件是否存在的方法:File.Exist
该方法声明如下:
public static bool Exists(string path);
但上述方法主要对UTF-8的编码文本进行操作,从而显得不够灵活。在这里推荐读者使用下面的代码对txt文件进行操作。
· 对txt文件进行“读”操作,示例代码如下:
StreamReader TxtReader = new StreamReader(@"c:\temp\newFile.txt",System.Text.Encoding.Default);
string FileContent;
FileContent = TxtReader.ReadEnd();
TxtReader.Close();
· 对txt文件进行“写”操作,示例代码如下:
StreamWriter = new StreamWrite(@"c:\temp\newFile.txt",System.Text.Encoding.Default);
string FileContent;
TxtWriter.Write(FileContent);
TxtWriter.Close();
System.IO.Directory类和System.DirectoryInfo类
主要提供关于目录的各种操作,使用时需要引用System.IO命名空间。下面通过程序实例来介绍其主要属性和方法。
(1) 目录创建方法:Directory.CreateDirectory
该方法声明如下:
public static DirectoryInfo CreateDirectory(string path);
下面的代码演示在c:\temp文件夹下创建名为NewDirectory的目录。
private void MakeDirectory()
{
Directory.CreateDirectory(@"c:\temp\NewDirectoty")
}
(2) 目录删除方法:Directory.Delete
该方法声明如下:
public static void Delete(string path,bool recursive);
下面的代码可以将c:\temp\BackUp目录删除。Delete方法的第二个参数为bool类型,它可以决定是否删除非空目录。如果该参数值为true,将删除整个目录,即使该目录下有文件或子目录;若为false,则仅当目录为空时才可删除。
private void DeleteDirectory()
{
Directory.Delete(@"c:\temp\BackUp",true);
}
(5) 获取当前目录下的所有子目录方法:Directory.GetDirectories
该方法声明如下:
public static string[ ] GetDirectories(string path;);
下面的代码读出c:\temp\目录下的所有子目录,并将其存储到字符串数组中。
private void GetDirectory()
{
string [ ] Directorys;
Directorys = Directory. GetDirectories (@"c:\temp");
}
(6) 获取当前目录下的所有文件方法:Directory.GetFiles
该方法声明如下:
public static string [ ] GetFiles(string path);
下面的代码读出c:\temp\目录下的所有文件,并将其存储到字符串数组中。
private void GetFile()
{
string [ ] Files;
Files = Directory. GetFiles (@"c:\temp");
}
(7) 判断目录是否存在方法:Directory.Exist
该方法声明如下:
public static bool Exists(string path);
--------------------------------------------------Windows Phone 7手机开发,.NET培训,期待与您交流!-------------------------------------------------