C#文件和目录的操作
根据文件名获取文件
/// <summary>
/// 根据文件名获取文件
/// </summary>
/// <param name="directory"></param>
/// <param name="fileName"></param>
/// <param name="searchOption"></param>
/// <returns></returns>
private FileInfo[] GetFile(string directory, string fileName, SearchOption searchOption)
{
DirectoryInfo directoryInfo = new DirectoryInfo(directory);
if (!directoryInfo.Exists)
return null; return directoryInfo.GetFiles(fileName, searchOption);
}
删除过期目录
/// <summary>
/// 删除过期目录
/// </summary>
/// <param name="directory">根目录</param>
/// <param name="day">期限</param>
/// <returns></returns>
private int DelectOverdueDirectorys(string directory, int day)
{
DirectoryInfo directoryInfoRoot = new DirectoryInfo(directory);
if (!directoryInfoRoot.Exists)
return ; DirectoryInfo[] directoryInfos = directoryInfoRoot.GetDirectories();
foreach (var directoryInfo in directoryInfos)
{
if (DateTime.Now.Subtract(directoryInfo.CreationTime).TotalDays > day)
directoryInfo.Delete(true);
} return ;
}
删除过期文件
/// <summary>
/// 删除过期文件
/// </summary>
/// <param name="directory">根目录</param>
/// <param name="day">期限</param>
/// <returns></returns>
private int DelectOverdueFiles(string directory, int day)
{
DirectoryInfo directoryInfoRoot = new DirectoryInfo(directory);
if (!directoryInfoRoot.Exists)
return ; FileInfo[] fileInfos = directoryInfoRoot.GetFiles();
foreach (var fileInfo in fileInfos)
{
if (DateTime.Now.Subtract(fileInfo.CreationTime).TotalDays > day)
fileInfo.Delete();
} return ;
}
设置目录隐藏
/// <summary>
/// 设置目录隐藏
/// </summary>
/// <param name="directory"></param>
/// <returns></returns>
private int SetDirectoryHide(string directory)
{
DirectoryInfo directoryInfo = new DirectoryInfo(directory);
if (!directoryInfo.Exists)
return ; directoryInfo.Attributes = FileAttributes.Hidden;
return ;
}
目录加解锁
string FileExtend = ".{2559a1f2-21d7-11d4-bdaf-00c04f60b9f0}";
/// <summary>
/// 目录加锁
/// </summary>
/// <param name="directory"></param>
/// <returns></returns>
private int DirectoryEncrypt(string directory)
{
DirectoryInfo directoryInfo = new DirectoryInfo(directory);
if (!directoryInfo.Exists)
return ;
directoryInfo.MoveTo(directory + FileExtend);
return ;
}
/// <summary>
/// 目录解锁
/// </summary>
/// <param name="directory"></param>
/// <returns></returns>
private int DirectoryDecrypt(string directory)
{
DirectoryInfo directoryInfo = new DirectoryInfo(directory + FileExtend);
if (!directoryInfo.Exists)
return ;
directoryInfo.MoveTo(directory);
return ;
}
C#文件和目录的操作的更多相关文章
- FileDirLocationOperator - 文件或目录位置操作.
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Move ...
- Perl文件、目录常用操作
注意,这些操作的对象是文件名(相对路径/绝对路径),而非文件/目录句柄,句柄只是perl和文件系统中文件的关联通道,而非实体对象. 创建文件 在unix类操作系统中有一个touch命令可以非常方便的创 ...
- 【node】fs模块,文件和目录的操作
检查文件是否存在,查询文件信息 fs.stat() fs.stat('./server.js', function (err, stat) { if (stat && stat.isF ...
- Java——文件及目录File操作
API file.listFiles(); //列出目录下所有文件及子目录fileList[i].isFile() //判断是否为文件 fileList[i].isDirectory() //判断是否 ...
- Python之文件操作:文件、目录的操作
一.创建 1.创建文件 open(path,'w') 2.创建目录 (1)os.mkdir(pt[, mode=0777]) 新建一个目录pt,参数mode表示生成的目录的权限,默认是超级权限,也就是 ...
- 12 hdfs常用文件、目录拷贝操作、删除操作
package com.da.hbase.tool.utils; import com.da.hbase.tool.common.Const; import org.apache.hadoop.con ...
- Java NIO.2 —— 文件或目录拷贝操作
拷贝整个文件树是可以递归每个目录和文件调用 Files.copy()方法.在使用的时候有一下注意事项. 在往目录拷贝文件之前,首先要保证目录已经存在.拷贝源目录(不论是否为空)都会生成目标目录.整个任 ...
- Java NIO.2 —— 文件或目录删除操作
文件删除 删除单个文件的操作很简单,如果要删除一个目录树的话,需要实现FileVisitor 接口然后递归地调用delete() 或deleteIfExists()方法.在看代码之前,需要注意一下问题 ...
- 【QT相关】文件、目录基础操作
判断目录是否存在: QString proFile(t_path); proFile.append("/dir"); QFileInfo proFileInfo(proFile); ...
- Python中对文件和目录的操作
用到的核心模块有:os shutil 文件的创建:f = open("文件名", "w") 注:如果涉及到乱码问题需要在后面加上encoding=&quo ...
随机推荐
- mongodb主从复制 副本集(六)
主从复制副本集 8888.conf dbpath = D:\software\MongoDBDATA\07\8888 #主数据库地址port = 8888 #主数据库端口号bind_ip = 127. ...
- Memcache 内存对象缓存系统
简介: Memcached 是一个高性能的分布式内存存储对象缓存系统,用于动态 WEB 应用以减轻数据库负载. 它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态.数据库驱动网站的速度. ...
- Unity iOS 项目的一种性能评测方法
[Unity iOS 项目的一种性能评测方法]
- Level Of Detail
[Level Of Detail] LOD0离摄像机最近,LODN离摄像机最远.LOD Group组件的用法是,将此组件挂在根节点上,然后每一个LOD挂同样多的Renderer(通常是子对象). At ...
- C#给图片加文字和图片的水印
/// <summary> /// WaterMark 的摘要说明 /// </summary> /// 图片加水印 /// <param name="strC ...
- java实现最通俗易懂的01背包问题
这几天一直在想背包问题,昨天还有个学长专门讲了,但是还是不是很理解,今天我终于想通了背包问题,其实只要理解了这个思路,不管用什么语言,肯定是能编出来的.下面我就来介绍一下背包问题. 1.题目描述: 有 ...
- 【LA2957 训练指南】运送超级计算机【二分,最大流】
题意: 宇宙中有n个星球,你的任务是用最短的时间把k个超级计算机从星球S运送到星球T.每个超级计算机需要一整艘飞船来运输.行星之间有m条双向隧道,每条隧道需要一整天的时间来通过,且不能有两艘飞船同时使 ...
- 4418开发板读取u盘说明
1.插上u盘后会在dev下生成两个文件db db1 将db1挂载即可访问..
- 洛谷 P3112 [USACO14DEC]后卫马克Guard Mark
题目描述 Farmer John and his herd are playing frisbee. Bessie throws the frisbee down the field, but it' ...
- Python使用日常
#Python中文件夹和文件的判断import os My_Path = "/home/lpworkstudy/Gooddir/" #现在我们判断这个文件夹是否存在 #如果不存在, ...