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 ...
随机推荐
- 4.redis 键
转自:http://www.runoob.com/redis/redis-tutorial.html Redis 键(key) Redis 键命令用于管理 redis 的键. 语法 Redis 键命令 ...
- Eclipse weblogic 中文乱码问题解决办法
- Unable to save settings: Failed to save settings. Please restart IntelliJ IDEA
找到原先备份的项目,把 .idea 文件夹重新覆盖,解决问题.
- UNITY 带spriterender的对象导出为prefab时主贴图丢失的BUG
从场景导出带有sprite的对象为prefab时贴图丢失的BUG.解决方案:对场景中每个sprite重新赋一下贴图,然后导出就好了,原因不明. 补充:这个有时候是因为贴图类型不是 2D AND UI ...
- MySQL数据库篇之存储引擎
主要内容: 一.数据引擎 二.MySQL支持的存储引擎 三.使用存储引擎 1️⃣ 什么是存储引擎? MySQL中建立的库----> 文件夹,库中建立的表----->文件. 现实生活中我们用 ...
- 使apk具有system权限
使apk具有system权限的方法: 方法一: 1. 在应用程序的AndroidManifest.xml中的manifest节点中加入 android:sharedUserId=" ...
- C#登陆界面学习编写 2018.08.03
简单的登陆界面的编写,在编写如下界面时,设置错误次数上限需要用到静态变量 public static int count;//计算错误次数(为静态变量) 可以防止点击登陆后次数被清空,在登陆后打开新的 ...
- 如何显示当前Mipmap级别?
[如何显示当前Mipmap级别?] 乘以 mainTextureSize/mipTextureSize是为了让mipColorsTexture纹理与mainTexture级别对应.直接用uv是不行的, ...
- 使用jQuery解析JSON数据-已验证
本文来源于:http://www.cnblogs.com/codeplus/archive/2011/07/18/2109544.html 上例中得到的JSON数据如下,是一个嵌套JSON: {&qu ...
- 这几天用高通VUFORIA的体会
VUFORIA 主要用来做图像识别,先把图片上至网站,然后网站分析生成数据包 在UNITY中导入VUFORIA SDK和数据包后,就可以正常使用了 对了,数据包需要勾选Load Active那个选项, ...