c# 文件笔记
1、文件属性操作
File类与FileInfo都能实现。静态方法与实例化方法的区别!
- //use File class
- Console.WriteLine(File.GetAttributes(filePath));
- File.SetAttributes(filePath,FileAttributes.Hidden | FileAttributes.ReadOnly);
- Console.WriteLine(File.GetAttributes(filePath));
- //user FilInfo class
- FileInfo fi = new FileInfo(filePath);
- Console.WriteLine(fi.Attributes.ToString());
- fi.Attributes = FileAttributes.Hidden | FileAttributes.ReadOnly; //隐藏与只读
- Console.WriteLine(fi.Attributes.ToString());
- //只读与系统属性,删除时会提示拒绝访问
- fi.Attributes = FileAttributes.Archive;
- Console.WriteLine(fi.Attributes.ToString());
2、文件路径
文件和文件夹的路径操作都在Path类中。另外还可以用Environment类,里面包含环境和程序的信息。
- string dirPath = @"D:\TestDir";
- string filePath = @"D:\TestDir\TestFile.txt";
- Console.WriteLine("<<<<<<<<<<<{0}>>>>>>>>>>", "文件路径");
- //获得当前路径
- Console.WriteLine(Environment.CurrentDirectory);
- //文件或文件夹所在目录
- Console.WriteLine(Path.GetDirectoryName(filePath)); //D:\TestDir
- Console.WriteLine(Path.GetDirectoryName(dirPath)); //D:\
- //文件扩展名
- Console.WriteLine(Path.GetExtension(filePath)); //.txt
- //文件名
- Console.WriteLine(Path.GetFileName(filePath)); //TestFile.txt
- Console.WriteLine(Path.GetFileName(dirPath)); //TestDir
- Console.WriteLine(Path.GetFileNameWithoutExtension(filePath)); //TestFile
- //绝对路径
- Console.WriteLine(Path.GetFullPath(filePath)); //D:\TestDir\TestFile.txt
- Console.WriteLine(Path.GetFullPath(dirPath)); //D:\TestDir
- //更改扩展名
- Console.WriteLine(Path.ChangeExtension(filePath, ".jpg"));//D:\TestDir\TestFile.jpg
- //根目录
- Console.WriteLine(Path.GetPathRoot(dirPath)); //D:\
- //生成路径
- Console.WriteLine(Path.Combine(new string[] { @"D:\", "BaseDir", "SubDir", "TestFile.txt" })); //D:\BaseDir\SubDir\TestFile.txt
- //生成随即文件夹名或文件名
- Console.WriteLine(Path.GetRandomFileName());
- //创建磁盘上唯一命名的零字节的临时文件并返回该文件的完整路径
- Console.WriteLine(Path.GetTempFileName());
- //返回当前系统的临时文件夹的路径
- Console.WriteLine(Path.GetTempPath());
- //文件名中无效字符
- Console.WriteLine(Path.GetInvalidFileNameChars());
- //路径中无效字符
- Console.WriteLine(Path.GetInvalidPathChars());
c# 文件笔记的更多相关文章
- itextsharp利用模板生成pdf文件笔记
iTextSharp是一款开源的PDF操作类库,使用它可以快速的创建PDF文件. 中文参考网站:http://hardrock.cnblogs.com/ http://pdfhome.hope.com ...
- webpack文件笔记
webpack.prod.conf.js里面的ExtractTextPlugin,把css文件提取出来,专门进行打包minify :压缩 依赖的第三方库打包到vendor.js里面 每次项目打包的时候 ...
- Linux压缩文件笔记
https://my.oschina.net/dongqianlin/blog/97168http://linux.it.net.cn/CentOS/fast/2017/0628/27029.html ...
- 在express中提供静态文件笔记
在express中提供静态文件 要在express框架中提供静态文件,如:css.javascript等文件,就要使用到他的内置中间件功能express.static,将包含静态文件目录文件传递给ex ...
- Markdown 编辑器+同步预览+文件笔记管理+静态博客 metadata 管理
Leanote: 1. 笔记管理, 支持富文本, markdown, 写作模式.... 编辑器绝对好用. 另外特意为coder制作了一个贴代码的插件, 真是太贴心(因为作者也是coder) 2. 博客 ...
- C/C++语言读取SEGY文件笔记(一)
SEGY IO 推荐采用的IDE为Visual studio(VS),本文档将介绍SEGY文件的读取与写入过程,即SEGY文件的复制. 因此,新建头文件ReadSeismic.h与C++文件ReadS ...
- SQL 笔记 By 华仔
-------------------------------------读书笔记------------------------------- 笔记1-徐 最常用的几种备份方法 笔记2-徐 收缩数据 ...
- 嵌入式Linux学习笔记(0)基础命令。——Arvin
学习记录: 到今天为止ARM裸机开发学习进程:1.2.1-1.2.14 预科班知识Linux介绍学习进程:0.2.1-0.2.6 学习内容笔记: 学习了Linux的开发方式的优劣介绍 学习了常用文件夹 ...
- Linux学习笔记(二)2015.4.14
笔记2.1 Q:登陆命令 A:刚开始登陆的是安装Linux时设置的普通用户,如lin,输入su - root后,成为root用户 笔记2.2 Q:切换控制台 A:ctrl+alt+F1-F7可以切 ...
随机推荐
- require模块化载入
1,模块化require的载入步骤 1,一个总文件夹,,里面三个子文件夹 ,, 分别是 2,common 里面是放一些公共方法和自己封装的方法 js里面是放自己的业务逻辑js文件和一些模块化的 ...
- 纯java+maven+sqlserver使用mybatis
第一部分:基本实现 @参考文章,在此基础上略作修改 1,新建maven项目JavaMybatis导入依赖 <dependencies> <dependency> <gro ...
- day 16 包,random,shutil
包: 函数过多,可以分模块文件去管理函数,模块文件过多,将模块文件分类放在一个个的文件夹中,这个文件夹就叫做包,组织结构更加清晰,合理! 模式就是被别人使用,包既然是一些模块的集合,也是被调用. 文件 ...
- Java10-java语法基础(九)——java的封装性
Java10-java语法基础(九)——java的封装性 一.Java的三大特性:封装.多态.继承 封装:通过类封装对象的数据成员和成员方法,保证只有可信的类或者对象能够访问这些方法和数据成员,对不可 ...
- Java05-Java基础语法(四)循环结构
Java05-Java基础语法(四)循环结构 循环结构(重复/迭代):根据条件重复执行部分语句 1.while循环结构 while(条件表达式){ 循环体语句; } 1)语法:a.while是关键字 ...
- Cloud Foundry v2 部署及入门运维
之前写过一个Guide for Cloud Foundry New Teamer.不过似乎已经有些过时,那会实验室主要是针对的CF v1进行的研究,现在已经全面进入V2时代了.所以更新一下关于Clou ...
- ios 获取当前时间
1.第一种返回的时间是一个整个的字符串. NSDate *timeDate = [NSDate date]; NSDateFormatter *dateFormatter = [[NSDateForm ...
- 三角化---深度滤波器---单目稠密重建(高翔slam---十三讲)
一.三角化 [1]三角化得到空间点的三维信息(深度值) (1)三角化的提出 三角化最早由高斯提出,并应用于测量学中.简单来讲就是:在不同的位置观测同一个三维点P(x, y, z),已知在不同位置处观察 ...
- 序列化、模块 day21
一 序列化 什么叫序列化——将原本的字典.列表等内容转换成一个字符串的过程就叫做序列化. 字典示例 import json d={'a':1,'b':2} ret = json.dumps(d)# ...
- 4J - 前m大的数
还记得Gardon给小希布置的那个作业么?(上次比赛的1005)其实小希已经找回了原来的那张数表,现在她想确认一下她的答案是否正确,但是整个的答案是很庞大的表,小希只想让你把答案中最大的M个数告诉她就 ...