c# 对文件操作
/// <summary>
/// 获得当前绝对路径
/// </summary>
/// <param name="strPath">指定的路径</param>
/// <returns>绝对路径</returns>
public static string GetMapPath(string strPath)
{
if (strPath.ToLower().StartsWith("http://"))
{
return strPath;
}
if (HttpContext.Current != null)
{
return HttpContext.Current.Server.MapPath(strPath);
}
else //非web程序引用
{
strPath = strPath.Replace("/", "\\");
if (strPath.StartsWith("\\"))
{
strPath = strPath.Substring(strPath.IndexOf()).TrimStart('\\');
}
return System.IO.Path.Combine(AppDomain.CurrentDomain.BaseDirectory, strPath);
}
}
/// <summary>
/// 删除单个文件
/// </summary>
/// <param name="_filepath">文件相对路径</param>
public static bool DeleteFile(string _filepath)
{
if (string.IsNullOrEmpty(_filepath))
{
return false;
}
string fullpath = GetMapPath(_filepath);
if (File.Exists(fullpath))
{
File.Delete(fullpath);
return true;
}
return false;
}
/// <summary>
/// 删除上传的文件(及缩略图)
/// </summary>
/// <param name="_filepath"></param>
public static void DeleteUpFile(string _filepath)
{
if (string.IsNullOrEmpty(_filepath))
{
return;
}
string fullpath = GetMapPath(_filepath); //原图
if (File.Exists(fullpath))
{
File.Delete(fullpath);
}
)
{
, _filepath.LastIndexOf();
string fullTPATH = GetMapPath(thumbnailpath); //宿略图
if (File.Exists(fullTPATH))
{
File.Delete(fullTPATH);
}
}
}
/// <summary>
/// 删除指定文件夹
/// </summary>
/// <param name="_dirpath">文件相对路径</param>
public static bool DeleteDirectory(string _dirpath)
{
if (string.IsNullOrEmpty(_dirpath))
{
return false;
}
string fullpath = GetMapPath(_dirpath);
if (Directory.Exists(fullpath))
{
Directory.Delete(fullpath, true);
return true;
}
return false;
}
/// <summary>
/// 修改指定文件夹名称
/// </summary>
/// <param name="old_dirpath">旧相对路径</param>
/// <param name="new_dirpath">新相对路径</param>
/// <returns>bool</returns>
public static bool MoveDirectory(string old_dirpath, string new_dirpath)
{
if (string.IsNullOrEmpty(old_dirpath))
{
return false;
}
string fulloldpath = GetMapPath(old_dirpath);
string fullnewpath = GetMapPath(new_dirpath);
if (Directory.Exists(fulloldpath))
{
Directory.Move(fulloldpath, fullnewpath);
return true;
}
return false;
}
/// <summary>
/// 返回文件大小KB
/// </summary>
/// <param name="_filepath">文件相对路径</param>
/// <returns>int</returns>
public static int GetFileSize(string _filepath)
{
if (string.IsNullOrEmpty(_filepath))
{
;
}
string fullpath = GetMapPath(_filepath);
if (File.Exists(fullpath))
{
FileInfo fileInfo = new FileInfo(fullpath);
;
}
;
}
/// <summary>
/// 返回文件扩展名,不含“.”
/// </summary>
/// <param name="_filepath">文件全名称</param>
/// <returns>string</returns>
public static string GetFileExt(string _filepath)
{
if (string.IsNullOrEmpty(_filepath))
{
return "";
}
)
{
); //文件扩展名,不含“.”
}
return "";
}
/// <summary>
/// 返回文件名,不含路径
/// </summary>
/// <param name="_filepath">文件相对路径</param>
/// <returns>string</returns>
public static string GetFileName(string _filepath)
{
);
}
/// <summary>
/// 文件是否存在
/// </summary>
/// <param name="_filepath">文件相对路径</param>
/// <returns>bool</returns>
public static bool FileExists(string _filepath)
{
string fullpath = GetMapPath(_filepath);
if (File.Exists(fullpath))
{
return true;
}
return false;
}
c# 对文件操作的更多相关文章
- 【.NET深呼吸】Zip文件操作(1):创建和读取zip文档
.net的IO操作支持对zip文件的创建.读写和更新.使用起来也比较简单,.net的一向作风,东西都准备好了,至于如何使用,请看着办. 要对zip文件进行操作,主要用到以下三个类: 1.ZipFile ...
- 野路子出身PowerShell 文件操作实用功能
本文出处:http://www.cnblogs.com/wy123/p/6129498.html 因工作需要,处理一批文件,本想写C#来处理的,后来想想这个是PowerShell的天职,索性就网上各种 ...
- Node基础篇(文件操作)
文件操作 相关模块 Node内核提供了很多与文件操作相关的模块,每个模块都提供了一些最基本的操作API,在NPM中也有社区提供的功能包 fs: 基础的文件操作 API path: 提供和路径相关的操作 ...
- 归档NSKeyedArchiver解归档NSKeyedUnarchiver与文件管理类NSFileManager (文件操作)
========================== 文件操作 ========================== 一.归档NSKeyedArchiver 1.第一种方式:存储一种数据. // 归档 ...
- SQL Server附加数据库报错:无法打开物理文件,操作系统错误5
问题描述: 附加数据时,提示无法打开物理文件,操作系统错误5.如下图: 问题原因:可能是文件访问权限方面的问题. 解决方案:找到数据库的mdf和ldf文件,赋予权限即可.如下图: 找到mdf ...
- 通过cmd完成FTP上传文件操作
一直使用 FileZilla 这个工具进行相关的 FTP 操作,而在某一次版本升级之后,发现不太好用了,连接老是掉,再后来完全连接不上去. 改用了一段时间的 Web 版的 FTP 工具,后来那个页面也 ...
- Linux文件操作的主要接口API及相关细节
操作系统API: 1.API是一些函数,这些函数是由linux系统提供支持的,由应用层程序来使用,应用层程序通过调用API来调用操作系统中的各种功能,来干活 文件操作的一般步骤: 1.在linux系统 ...
- C语言的fopen函数(文件操作/读写)
头文件:#include <stdio.h> fopen()是一个常用的函数,用来以指定的方式打开文件,其原型为: FILE * fopen(const char * path, c ...
- Python的文件操作
文件操作,顾名思义,就是对磁盘上已经存在的文件进行各种操作,文本文件就是读和写. 1. 文件的操作流程 (1)打开文件,得到文件句柄并赋值给一个变量 (2)通过句柄对文件进行操作 (3)关闭文件 现有 ...
- python 文件操作(转)
python中对文件.文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块. 得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd() 返回指定目录下的所有文件和目 ...
随机推荐
- HTTP1.1协议-RFC2616-中文版
转自:http://www.cnblogs.com/k1988/archive/2010/01/12/2165683.html 说明 本文档规定了互联网社区的标准组协议,并需要讨论和建议以便更加完善. ...
- overlay fs挂载及操作测试
overlayfs是目前使用比较广泛的层次文件系统,实现简单,性能较好,可以充分利用不同或则相同overlay文件系统的page cache,具有 上下合并 同名遮盖 写时拷贝 等特点. 一个 ove ...
- EBS server log日志
Log file location for Oracle E-Business Suite R12 April 13, 2010 in Oracle Database&EBS General ...
- 背水一战 Windows 10 (79) - 自定义控件: Layout 系统, 控件模板, 事件处理
[源码下载] 背水一战 Windows 10 (79) - 自定义控件: Layout 系统, 控件模板, 事件处理 作者:webabcd 介绍背水一战 Windows 10 之 控件(自定义控件) ...
- 背水一战 Windows 10 (72) - 控件(控件基类): UIElement - UIElement 的位置, UIElement 的布局, UIElement 的其他特性
[源码下载] 背水一战 Windows 10 (72) - 控件(控件基类): UIElement - UIElement 的位置, UIElement 的布局, UIElement 的其他特性 作者 ...
- flask_SQLALchemy之多表查询
1. join 查询 假设这样一个业务场景,知道一个邮箱地址,要查询这个地址所属的用户,第一个办法是用连接多个 filter() 来查询. for u, a in session.query(User ...
- 在Shell脚本中获取指定进程的PID
注意这条命令用反引号(Tab上面的那个键)括起来,作用类似于${ } processId = ` ps -ef | grep fms.jar | grep -v grep | awk '{print ...
- Typescript 学习笔记二:数据类型
中文网:https://www.tslang.cn/ 官网:http://www.typescriptlang.org/ 目录: Typescript 学习笔记一:介绍.安装.编译 Typescrip ...
- Spring 声明事务中transactionAttributes属性 + - Exception 实现逻辑
下面是一段典型的Spring 声明事务的配置: <bean id=“baseTxProxy” lazy-init=“true”class=“org.springframework.transac ...
- 【LeetCode】7. 整数反转python3
题目 给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转. 示例 1:输入: 123 输出: 321 示例 2:输入: -123 输出: -321 示例 3:输入: 120 输出 ...