C++的基础知识(五)--Path类、Directory类与File类
来源:互联网 发布:阿拉曼战役 知乎 编辑:程序博客网 时间:2024/06/18 18:16
Path类与Directory类与File类的操作实例
1、Path类:
Path 对路径 字符串进行操作获得后缀,能合并路径,获取文件名
using System;using System.IO;//目录和文件操作的名称空间namespace _11_Path类 {class Program {static void Main(string[] args) {string path = "c:\\abc\\1.txt" ;//注意这里是对路径字符串的操作 而不是真正的文件 “修改”支持字符串层面的,没有真的给文件改名path = Path.ChangeExtension(path, "avi" );//ChangeExtension()修改文件后缀名1.avi c:\\abc\\1.avi//将两个路径合成一个路径,比用+好,可以方便解决是不是加斜线的问题,自动处理路径分隔符的问题path = Path.Combine("c:\\abc\\def\\" , "1.jpg"); //c:\abc\def\1.jpg//得到文件所在文件夹的位置 同样是从字符串的角度去处理path = Path.GetDirectoryName(path);//c:\abcpath = Path.GetExtension(path);//扩展名 .txtpath = Path.GetFileName(path);//文件名.后缀名 1.txtpath = Path.GetFileNameWithoutExtension(path);//不含后缀的文件名 1path = Path.GetFullPath("11-Path类.exe" );//文件全路径(相对文件的全路径 一般也不用此方法) F:\PIZIYIMAO\11-Path类\bin\Debug\11-Path类.exepath = Path.GetTempFileName();//临时文件夹保存路径 自动创建文件 C:\Documents and Settings\PIZIYIMAO\Local Settings\Temp\tmp5E.tmppath = Path.GetTempPath();//获取临时文件夹保存路径 C:\Documents and Settings\PIZIYIMAO\Local Settings\Temp\Console.WriteLine(path);Console.Read();}}}
2、操作目录类 Directory与DirectoryInfo
Directory和DirectoryInfo 对目录进行操作,判断目录是否存在,创建目录,删除目录,获取目录下所有的子目录,获取目录下所有的子文件。
using System;using System.IO;namespace _12_Directory {class Program {static void Main( string[] args) {DirectoryInfo dic = new DirectoryInfo( "c:\\abc" );//dic.Name; //获取文件名//dic.FullName; //获取文件全路径 功能要比Directory强大 区别在于它是实例类 而后者是静态类Directory .CreateDirectory("c:\\abc" ); //创建文件夹Directory .CreateDirectory("c:\\abc\\1\\2\\3\\4\\5\\6\\7" ); //连续创建多级文件夹if (Directory .Exists( "c:\\abc")) //判断是否存在文件夹{Directory .Delete("c:\\abc" ); //如果存在则删除 如果文件夹为空能正常删除 不为空则会报错 "目录不是空的"Directory .Delete("c:\\abc" , true); //true则指定 如果文件夹不为空 同样执行删除操作}string [] paths = Directory .GetDirectories( "c:\\abc"); //获取目录中所有子目录名称 注意只取下一级别 即c:\abc\1 如获取windows文件夹下所有文件夹路径可以使用此方法string [] paths2 = Directory .GetDirectories( "c:\\windows", "$*" );//以上方法重载实现 检索以$开头的文件string [] paths3 = Directory .GetDirectories( "c:\\abc", "*" , SearchOption .AllDirectories);//通配符查找文件夹中符合条件的文件 包括子级文件夹foreach (string path in paths) {Console .WriteLine(path);}string [] files = Directory .GetFiles( "c:\\windows"); //遍历文件夹下的所有文件string [] files2 = Directory .GetFiles( "c:\\windows", "*.ini" , SearchOption .AllDirectories);//通配符查找目录下的文件 用法类似于GetDirectoriesforeach (string file in files2) {Console .WriteLine(file);}//目录操作最重要的就是 GetFiles和GetDirectories方法Directory .GetParent("c:\\abc\\1\\2\\3\\4\\5\\6\\7" ); //返回7文件夹的父级目录 c:\abc\1\2\3\4\5\6Console .Read();}}}
3、文件类File
File和FileInfo 对文件进行操作,读文件,写文件,追加文件,判断文件是否存在,创建文件,删除文件。
using System;using System.IO;using System.Text;namespace _13_File {class Program {static void Main( string[] args) {//file静态类 使用file类时需要注意文件默认编码的使用 如果编码不正确 文件中会显示乱码File .AppendAllText("c:\\1.txt" , "gb1232"); //向c:\\1.txt文件中追加 内容“gb2312”//如果存在写入文件if (File .Exists( "c:\\1.txt")) {File .WriteAllText("c:\\1.txt" , "写入中文有时会出现乱码 需要使用第三个参数 指定Encoding文件的编码格式 Default为默认格式" ,Encoding .Default);//WriteAllText是彻底的覆盖 而AppendAllText是追加}//File.ReadAllText();//读取文件不再列举 以下方法查看文档不再举例//string[] ReadAllLines(string path) //读取文本文件到字符串数组中//string ReadAllText(string path) //读取文本文件到字符串中//WriteAllLines(string path,string[] contents),//将字符串数组逐行保存到文件path中,会覆盖旧内容。FileInfo fi = new FileInfo( "c:\\2.txt" );//实例化的类 功能比file要强大fi.AppendText(); //它有很多的方法 和属性 自己查看 文档Console .Read();}}}
阅读全文
0 0
- C++的基础知识(五)--Path类、Directory类与File类
- Directory类(DirectoryInfo类)和Path类与File类的基本方法与操作以及实例
- directory path file类使用实例。
- C#目录操作 Path类与Directory类
- C#目录操作 Path类与Directory类
- Java基础知识学习五(File类)
- File类与Directory类
- 【C#基础知识】——File(文件操作)Path类
- Path 路径类 | Directory 文件夹类 | File 文件类 | FileStream 文件流类----------StreamReaded与StreamWriter
- C#中Path类、File类、Directory类总结
- C#文件操作常用相关类(Directory类、File类、Path类)
- File类Path类Directory类常用方法-附绝对及相对地址
- File类和Directory类
- path、directory——文件操作常用的类
- C#中File FileInfo 和Directory DirectoryInfo 类的区别
- 操作文件File/目录Directory的工具类
- Path类和File类
- Path类和File类
- 移植QT5.6到嵌入式开发板JZ2440
- select,数据查询,排序,字段别名__mysql学习笔记
- Android M 判断手机是否有SIM卡的逆推
- springmvc的核心,请求流程,
- PAT 甲级1001. A+B Format (20)
- C++的基础知识(五)--Path类、Directory类与File类
- 排序算法(三):简单选择排序
- C++ — const volatile mutable的用法
- 总结一下平时常用的知识
- 【技能库】--批量任务多线程并发执行(324)
- 软件设计师算法之回溯法--全排列
- eclipse中jetty启动maven项目,调试debug时,修改js文件必须关闭jetty才能保存
- 文章标题
- RTree 学习