File类、Directory类,都是静态类,可以直接使用类名

FileInfo类、DirectoryInfo类,都是动态类,需要new对象,通过对象来操作

【文件的创建、复制、移动、删除】using System.IO;

            //判断文件是否存在
File.Exists("C:\\test.txt");
FileInfo f = new FileInfo("C:\\test.txt");
if (f.Exists) { }
//创建文件,删除文件(Create换成Delete)
File.Create("C:\\test.txt");
FileInfo f = new FileInfo("C:\\test2.txt");
f.Create();
//复制文件
File.Copy("C:\\test.txt", "D:\\newTest.txt");
FileInfo f = new FileInfo("C:\\test2.txt");
f.CopyTo("D:\\newTest.txt");
//移动文件
File.Move("C:\\test.txt", "D:\\newTest.txt");
FileInfo f = new FileInfo("C:\\test2.txt");
f.MoveTo("D:\\newTest.txt");

【文件基本信息】

Name,文件名

FullName,完整目录(包括文件名)

DirectoryName,路径

IsReadOnly,是否只读

CreationTime,创建时间

Length,大小

private void button1_Click(object sender, EventArgs e)
{
if (openFileDialog1.ShowDialog()==DialogResult.OK)
{
textBox1.Text = openFileDialog1.FileName; //显示文件名
FileInfo info = new FileInfo(openFileDialog1.FileName);
MessageBox.Show(string.Format("文件名:{0} \n完整路径:{1} \n创建时间:{2} \n大小:{3}字节", info.Name, info.FullName, info.CreationTime, info.Length));
}
}

【文件夹的创建、移动、删除】

            //判断文件夹是否存在
Directory.Exists("C:\\Test");
DirectoryInfo f = new DirectoryInfo("C:\\Test");
if (f.Exists) { }
//创建文件夹
Directory.CreateDirectory("C:\\Test");
DirectoryInfo f = new DirectoryInfo("C:\\Test");
f.Create();
//移动文件夹
Directory.Move("C:\\Test", "C:\\newTest"); //注意,不同磁盘间无法移动
DirectoryInfo f = new DirectoryInfo("C:\\Test");
f.MoveTo("C:\\newTest");
//删除文件夹
Directory.Delete("C:\\Test"); //注意,必须是空文件夹
DirectoryInfo f = new DirectoryInfo("C:\\Test");
f.Delete(true); //全部删除,包括子文件夹

File类、FileInfo类、Directory类、DirectoryInfo类的更多相关文章

  1. System.IO中的File、FileInfo、Directory与DirectoryInfo类(实例讲解)

    一.建立的文件夹(对这些文件进行以上四个类的操作): 父目录: 父目录的子目录以及父目录下的文件: 子目录下的文件: 二.效果图 三.代码实现 using System; using System.I ...

  2. C#文件与流(FileStream、StreamWriter 、StreamReader 、File、FileInfo、Directory、directoryInfo、Path、Encoding)

    (FileStream.StreamWriter .StreamReader .File.FileInfo.Directory.DirectoryInfo.Path.Encoding)     C#文 ...

  3. C#回顾 - 2.NET的IO:Path、File、FileInfo、Directory、DirectoryInfo、DriveInfo、FileSystemWatcher

        1.管理文件系统 一般而言,应用程序都会有保存数据.检索数据的需求. 1.1 使用 path 类来访问文件路径 [path常用的方法]:http://www.cnblogs.com/tangg ...

  4. C# Directory和DirectoryInfo类(文件目录操作)

    对目录操作例子: using System; using System.Collections.Generic; using System.Linq; using System.Text; using ...

  5. FileInfo类和DirectoryInfo类

    FileInfo类和DirectoryInfo类可以方便地对文件和文件夹进行操作. 1. FileInfo类(非静态类) FileInfo类和File类之间许多方法调用都是相同的,但是FileInfo ...

  6. C# 文件类中 File ,FileInfo 类的主要区别

    System.IO命名空间中提供的文件操作类有File和FileInfo,这两个类的功能基本相同,只是File是静态类,其中所有方法都是静态的,可以通过类名直接调用,不需要实例化.而FileInfo是 ...

  7. DirectoryInfo类

    DirectoryInfo类和Directory类之间的关系与FileInfo类和File类之间的关系十分类似.下面介绍一下DirectoryInfo类的常用属性. DirectoryInfo类的常用 ...

  8. c# DirectoryInfo类 详解

    DirectoryInfo类和Directory类之间的关系与FileInfo类和File类之间的关系十分类似.下面介绍一下DirectoryInfo类的常用属性. DirectoryInfo类的常用 ...

  9. 文件及文件夹操作- File类、Directory 类、FileInfo 类、DirectoryInfo 类

    文件及文件夹操作: C/S:WinForm可以操作客户端文件 Client ServerB/S:Brower Server 命名空间:using system .IO; 1. File类: 创建:Fi ...

随机推荐

  1. CF450A 【Jzzhu and Children】

    普通的模拟题这题用一个队列容器来模拟队列元素是pair类型的,first用来存每个小朋友想要的糖数,second用来存小朋友的序号,然后开始模拟,模拟出口是当队列迟到等于1时就输出当前队列里小朋友的序 ...

  2. LOJ576 「LibreOJ NOI Round #2」签到游戏

    题目 先进行一个转化: 每次花费\(\gcd\limits_{i=l+1}^rB_i\)的代价,可以连\((l,r)\)这一条边. 然后我们需要求\(0\sim n\)的最小生成树. 根据Kruska ...

  3. KMP(next数组的更新理解)Codeforces Round #578 (Div. 2)--Compress Words

    题目链接:https://codeforc.es/contest/1200/problem/E 题意: 有n串字符串,让你连起来:sample please ease in out   ---> ...

  4. python_操作MySQL 初解 之__<类方法调用并 增-删-改-查>

    文件一: 调用(sqls文件) # 导入模块 import pymysql from sqls import * # 创建类 class KaoShi(object): # 初始化 def __ini ...

  5. MySQL中出现的小问题

    ./scripts/mysql_install_db: line 249: /app/mysql/bin/my_print_defaults: cannot execute binary fileNe ...

  6. Ruby Rails正式学习:Ruby on Rails 做个演示项目吧,逐渐完善

    项目开始 一. 新建Rails项目 1. 修改一下Gemfile文件(简单修改一下) source 'https://rubygems.org' git_source(:github) { |repo ...

  7. copy小练习

    # 1. # 有如下 # v1 = {'郭宝元', '李杰', '太白', '梦鸽'} # v2 = {'李杰', '景女神} # 请得到 v1 和 v2 的交集并输出 # 请得到 v1 和 v2 的 ...

  8. Codeforces 1178C. Tiles

    传送门 考虑一块块填,首先 $(1,1)$ 有 $4$ 种方案 然后根据 $(1,1)$ 的右边颜色,$(1,2)$ 有两种方案,$(1,3)$ 根据 $(1,2)$ 也有两种方案... 考虑 $(2 ...

  9. Linux Exploit系列之一 典型的基于堆栈的缓冲区溢出

    Linux (x86) Exploit 开发系列教程之一(典型的基于堆栈的缓冲区溢出) Note:本文大部分来自于看雪hackyzh的中文翻译,加入了一些自己的理解 典型的基于堆栈的缓冲区溢出 虚拟机 ...

  10. Tcp之心跳包

    Tcp之心跳包 心跳包 跳包之所以叫心跳包是因为:它像心跳一样每隔固定时间发一次,以此来告诉服务器,这个客户端还活着. 事实上这是为了保持长连接,至于这个包的内容,是没有什么特别规定的,不过一般都是很 ...