实现:创建/复制/移动文件API
2024-09-06 10:26:16
使用的API:
1、DeleteFile
DeleteFileW(
_In_ LPCWSTR lpFileName
);
2、CopyFile
CopyFileW(
_In_ LPCWSTR lpExistingFileName,
_In_ LPCWSTR lpNewFileName,
_In_ BOOL bFailIfExists
);
3、MoveFile
MoveFileW(
_In_ LPCWSTR lpExistingFileName,
_In_ LPCWSTR lpNewFileName
);
示例代码:
#include<windows.h>
#include<stdio.h>
int main(int argc, PTCHAR argv[]) {
/*
删除文件 api.exe -d 文件路径
复制文件 api.exe -c 路径1 路径2
移动/重命名文件 api.exe -m 路径1 路径2
*/
if (0 == lstrcmp(L"-d", argv[1]) && argc == 3) { // 满足条件是否是 第二个参数为-d 并且 命令行参数的个数为3 该函数结束的两个值都是为LPCWSTR
if (!DeleteFile(argv[2])) { //unicode的时候 接收的值为 LPCWSTR
printf("删除成功 \n");
}
else {
printf("删除失败 \n");
}
}else if (0 == lstrcmp(L"-c", argv[1]) && argc == 4) {
if (!CopyFile(argv[2], argv[3], true)) { //第三个参数为true那么文件如果已经存在则不进行覆盖
//复制失败,其中一种可能是存在文件同名,copyfile 返回值为0x50
if (getchar() == 'y') {
if (!CopyFile(argv[2], argv[3], false)) { //第三个参数为false那么文件如果已经存在则直接覆盖
printf("文件复制失败");
}else {
printf("文件复制成功");
}
}
}else
printf("文件复制成功! \n");
}else if (0 == lstrcmp(L"-m", argv[1]) && argc == 4) {
//进行移动/重命名文件的操作
if (!MoveFile(argv[2],argv[3])) { //movefile 和 copyfile api 参数的数据类型一样,用法也类似
printf("文件移动成功! \n");
}else {
printf("文件移动失败! \n");
}
}else {
printf("参数错误! 请重新输入");
}
system("pause");
return 0;
}
最新文章
- Windows Form调用R进行绘图并显示
- UML大战需求分析--阅读笔记3
- TodoMVC中的Backbone+MarionetteJS+RequireJS例子源码分析之一
- struts2自定义MVC框架
- centos修改hostname以及时间同步
- MapReduce的一点理解
- CodeForces 414D (贪心)
- [sql server发布订阅]after触发器执行失败造成复制不成功
- php发送http请求
- careercup-数组和字符串1.3
- 《JavaScript高级程序设计》读书笔记 ---创建对象
- Oracle表生成JavaBean
- Unix代码段和数据段
- sha256 js 前端加密
- MySQL中表复制:create table like 与 create table as select
- Java 字符编码 ASCII、Unicode、UTF-8、代码点和代码单元
- js获取指定格式的时间字符串
- Bat 批处理杀死进程 重新启动程序
- chrome ui源码剖析-ViewProp
- Android_ActionBar
热门文章
- [转帖]如何获得一个Oracle RAC数据库(从Github - oracle/vagrant-boxes) --- 暂时未测试成功 公司网络太差了..
- 什么是SQL ?
- C#使用表达式树动态调用方法并实现99乘法表
- Redis常用配置和命令总结
- python基础2--if,while,for,逻辑运算
- 浅谈Object.prototype.toString.call()方法
- Ueditor 关于视频上传相关问题
- 渐进增强(progressive enhancement)、优雅降级(graceful degradation)
- CSS文本单行或者多行超出区域省略号(...)显示方法
- Servlet 入门