C#学习之文件操作
1 DirectoryInfo 类介绍
DirectoryInfo 类在 .net 开发中主要用于创建、移动和枚举目录和子目录的实例方法,此类不能被继承。
从事 .net 软件开发的同事对 DirectoryInfo 类应该都很熟悉,在开发过程中如果你打算多次重用某个对象,建议你使用 DirectoryInfo 的实例方法,而不是 Directory 类的方法,因为 Directory 类是静态的,在使用它的方法时每次都需要安全检查,而 DirectoryInfo 类的方法则不需要安全检查。
2 DirectoryInfo 类属性
4 实例
4.1 创建 “收藏” 文件夹
DirectoryInfo di = new DirectoryInfo("E:\newFolder\收藏");
di.Create();
4.2 创建 “我的收藏.txt” 文件
DirectoryInfo di = new DirectoryInfo("E:\newFolder\收藏\我的收藏.txt");
di.Create();
4.3 删除 “收藏” 文件夹
DirectoryInfo di = new DirectoryInfo("E:\newFolder\收藏");
di.Delete(true);
4.4 获取子目录和文件
DirectoryInfo di = new DirectoryInfo("E:\newFolder\收藏");
di.GetDirectories();
4.5 设置目录属性
DirectoryInfo di =new DirectoryInfo("E:\newFolder\收藏");
di.Atttributes=FileAttributes.ReadOnly|FileAttributes.Hidden; //只读、隐藏
4.6 移动目录或文件
File.Move("E:\newFolder\收藏\a.txt","E:\newFolder\爱好");
4.7 获取目录下的文件
Directory. GetFiles ("E:\newFolder\收藏");
4.8 判断目录是否存在
File.Exists("E:\newFolder\收藏");
4.9 复制目录或文件
File.Copy(source,target);
4.10 获取文件路径中的文件名
Path.GetFileName("E:\aa\bb\c.txt"); //结果:c.txt
4.11 获取文件路径中的文件名的父路径
Path.GetDirectoryName("E:\aa\bb\c.txt"); //结果:E:\aa\bb\
4.12 读取文件
public static byte[] FileRead(System.IO.FileInfo file, long start, int packagesize)
{
byte[] resutl = null;
long length = start + packagesize;
using (System.IO.FileStream stream = file.OpenRead())
{
if (length > stream.Length) //最后一部分不足packagesize
resutl = new byte[stream.Length - start];
else
resutl = new byte[packagesize];
stream.Seek(start, System.IO.SeekOrigin.Begin);
stream.Read(resutl, , resutl.Length);
}
return resutl;
}
4.13 写入文件
public static void FileWrite(System.IO.FileInfo file, long start, byte[] data)
{
using (System.IO.FileStream stream = file.OpenWrite())
{
stream.Seek(start, System.IO.SeekOrigin.Begin);
stream.Write(data, , data.Length);
stream.Flush();
stream.Close();
}
}
C#学习之文件操作的更多相关文章
- HTML5学习之文件操作(九)
之前我们操作本地文件都是使用flash.silverlight或者第三方的activeX插件等技术,由于使用了这些技术后就很进行跨平台的处理,另外就是让我们的web应用依赖了第三方的插件,而不是很独立 ...
- python学习笔记:文件操作和集合(转)
转自:http://www.nnzhp.cn/article/16/ 这篇博客来说一下python对文件的操作. 对文件的操作分三步: 1.打开文件获取文件的句柄,句柄就理解为这个文件 2.通过文件句 ...
- python学习总结---文件操作
# 文件操作 ### 目录管理(os) - 示例 ```python # 执行系统命令 # 清屏 # os.system('cls') # 调出计算器 # os.system('calc') # 查看 ...
- erlang学习笔记(文件操作)
参考这里和这里了解到的文件操作的模块有很多:kernel下有:file,stdlib下有:filelib,filename,file_sorter.(具体查看官方文档)
- Smart210学习记录-------文件操作
一.linux文件操作(只能在linux系统上用) 创建:int creat(const char* filename, mode_t mode) filename 表示要创建的文件名,mode表示对 ...
- NodeJS学习之文件操作
NodeJS -- 文件操作 Buffer(数据块) JS语言自身只有字符串数据类型,没有二进制数据类型,因此NodeJS提供了一个与String对等的全局构造函数Buffer来提供对二进制数据的操作 ...
- python学习day8 文件操作(深度学习)
文件操作 (day7内容扩展) 1 文件基本操作 obj = open('路径',mode='模式',encoding='编码')obj.write()obj.read()obj.close() 2 ...
- python学习日记(文件操作)
文件操作概述 计算机系统分为:操作系统,计算机硬件,应用程序. 我们用python或其他语言编写的应用程序若想要把数据永久保存下来,必须要保存于硬盘中,这就涉及到应用程序要操作硬件,众所周知,应用程序 ...
- python 学习分享-文件操作篇
文件操作 f_open=open('*.txt','r')#以只读的方式(r)打开*.txt文件(需要与py文件在同一目录下,如果不同目录,需写全路径) f_open.close()#关闭文件 打开文 ...
- python基础学习笔记——文件操作
文件操作 初始文件操作 使用Python来读写文件是非常简单的操作,我们使用open()函数来打开一个文件,获取到文件句柄,然后通过文件句柄就可以进行各种各样的操作了 根据打开方式的不同能够执行的操作 ...
随机推荐
- 阉割版BBBlack安装Debian
开门见山,直入主题 咸鱼入手3块阉割ARM板,经过快递近6天运输到手,不过价格便宜 东西下面这样的(借了咸鱼的图): 发现这块板是阉割版的国外beagleboard.org型号为BeagleBone ...
- [ASP.NET]大文件无法上传排查经验分享
最近我们标桥下载模块,在经过正常更新后,发现软件包无法上传. 临时解决方案 因为问题结点在于文件无法上传到服务器,所以我们临时手动将文件丢到服务器,通过测试服务器将数据造出来,然后再更新到正式数据库, ...
- 无废话网页重构系列——(2)来套Web重构装备
本篇主要从语言入门.规范.工具.构建.库.框架.版本控制等各方面展开,篇幅会有点长,涉及到的工具类,会另开博文详细介绍. 另外说明Web重构是Web前端的开始,主要侧重Web页面,如实现布局与兼容,符 ...
- Linux openvswitch 性能调优-flow-eviction-threshold
原文:https://www.cnblogs.com/scottieyuyang/p/5683656.html Increasing the flow-eviction threshold The t ...
- 程序媛计划——SQLite初级
数据库简介 数据库定义: 指的是以一定方式储存在一起.能为多个用户共享.具有尽可能小的冗余度.与应用程序彼此独立的数据集合.是带有相关数据的表的集合. 数据库是由行和列组成的二维表. 字段: 数据库表 ...
- What are rules about using an underscore in a c identifier
http://stackoverflow.com/questions/228783/what-are-the-rules-about-using-an-underscore-in-a-c-identi ...
- 基于SWOOLE的分布式SOCKET消息服务器架构
消息服务器使用socket,为避免服务器过载,单台只允许500个socket连接,当一台不够的时候,扩充消息服务器是必然,问题来了,如何让链接在不同消息服务器上的用户可以实现消息发送呢? 要实现消息互 ...
- python基础知识input到while循环
j周笔记 输入与输出 1.输入 input ('请输入内容')= 字符串 2.输出 print(输出到控制台) 变量vairable 变量就是相当于我们人的名字 1.名字 ...
- 读Lock-Free论文实践
论文地址:implementing Lock-Free Queue 论文大体讲的意思是:Lock-Base的程序的performance不好,并且a process inside the critic ...
- 导入不用的css文件及在不同设备显示不用的html页面
当一个页面对应有多个css样式文件时,我们可以根据地址栏的参数值而导入不同的css文件: function getCss() { var linkNode = document.createEleme ...