首页 > 开发 > 综合 > 正文

C#网络应用编程基础练习题与答案(六)

2024-07-21 02:28:22
字体:
来源:转载
供稿:网友
  • 本文来源于网页设计爱好者web开发社区http://www.html.org.cn收集整理,欢迎访问。
  •   1. 简要回答文件和流之间的区别和联系。

      【解答】

      文件(file)和流(stream)即有区别又有联系。文件是在各种媒质上(可移动磁盘、硬盘、cd 等)永久存储的数据的有序集合。它是一种进行数据读写操作的基本对象。通常情况下,文件按照树状目录进行组织,每个文件都有文件名、文件所在路径、创建时间、访问权限等属性。

      流是字节序列的抽象概念,例如文件、输入输出设备、内部进程通信管道或者tcp/ip套接字等均可以看成流。流提供一种向后备存储器写入字节和从后备存储器读取字节的方式。

      2. directory类为我们提供了哪些目录管理的功能,它们是通过哪些方法来实现的?

      【解答】

      directory类为我们提供了对磁盘和目录进行管理的功能,如复制、移动、重命名、创建和删除目录,获取和设置与目录的创建、访问及写入操作相关的时间信息。

      如:createdirectory方法用于创建指定路径中的所有目录;delete方法用于删除指定的目录;move方法能够重命名或移动目录;exists方法用于确定给定路径是否引用磁盘上的现有目录;getcurrentdirectory方法用于获取应用程序的当前工作目录;getfiles方法用于返回指定目录中的文件的名称等。

      3. 编写程序综合应用directory类的主要方法。首先确定指定的目录是否存在,如果存在,则删除该目录;如果不存在,则创建该目录。然后,移动此目录,在其中创建一个文件,并对文件进行计数。

      【解答】

      程序清单如下:

      using system;
      using system.io;
      class test
      {
      public static void main()
      {
      string path = @"c:/mydir";
      string target = @"c:/testdir";
      try
      {
      if (!directory.exists(path))
      {
      directory.createdirectory(path);
      }
      if (directory.exists(target))
      {
      directory.delete(target, true);
      }
      directory.move(path, target);
      file.createtext(target + @"/myfile.txt");
      console.writeline("在{0}中的文件数目是{1}",
      target, directory.getfiles(target).length);
      }
      catch (exception e)
      {
      console.writeline("操作失败: {0}", e.tostring());
      }
      finally {}
      }
      }

      4. 编写程序,将文件复制到指定路径,允许改写同名的目标文件。

      【解答】

      程序清单如下:

      using system;
      using system.io;
      class test
      {
      public static void main()
      {
      string path = @"c:/temp/mytest.txt";
      string path2 = path + "temp";
      try
      {
      using (filestream fs = file.create(path)) {}
      file.delete(path2);
      file.copy(path, path2);
      console.writeline("{0}拷贝到:{1}", path, path2);
      file.copy(path, path2, true);
      console.writeline("第二次拷贝成功");
      }
      catch
      {
      console.writeline("重复拷贝不允许");
      }
      }
      }

      5. 编写程序,使用file类实现删除当前目录下的所有文件。

      【解答】

      程序清单如下:

      using system;
      using system.io;
      class filetest
      {
      public static void main()
      {
      console.writeline("确认删除当前目录下的所有文件?");
      console.writeline("点击'y'键继续,其它键取消操作");
      int a = console.read();
      if(a == 'y' || a == 'y'){
      console.writeline("正在删除文件...");
      }
      else
      {
      console.writeline("用户取消操作");
      return;
      }
      directoryinfo dir = new directoryinfo (".");
      foreach (fileinfo f in dir.getfiles())
      {
      f.delete();
      }
      }
      }
    发表评论 共有条评论
    用户名: 密码:
    验证码: 匿名发表