C# WPF Application 下的文件操作
好气哦,电脑好烂,每天花大把的时间在等电脑反应上。
没有钱买新电脑,连组台式机的钱都没有。好气哦。
啊啊啊啊文件操作是什么鬼???C++下我都懵了,C#下好多东西要学!!!我不会!我不会!我不会!!!啊啊啊啊啊啊!!!
怎么办啊?用windows API写我要怎么样移植到Linux下?
WINDOWS API的文件操作
一.常用函数
| CreateFile | 创建、打开文件 |
| ReadFile | 读取文件内容 |
| WriteFile | 写入文件内容 |
| SetFilePointer | 移动文件指针 |
| SetEndOfFile | 设置文件结尾标志 |
| CopyFile | 文件拷贝 |
| DeleteFile | 文件删除 |
| MoveFile | 文件移动 |
| CreateDirectory | 创建一个目录 |
| RemoveDirectory | 删除一个目录 |
| GetCurrentDirectory | 获取当前程序所在目录 |
| SetCurrentDirectory | 设置当前程序所在目录 |
| FindFirstFile | 查找指定目录下的第一个文件 |
| FindNextFile | 查找下一个文件 |
| LockFile | 文件锁定 |
| UnlockFile | 文件解锁 |
| GetFileType | 获取文件类型 |
| GetFileSize | 获取文件的大小 |
| GetFileAttributes | 获取文件属性 |
| SetFileAttributes | 设置文件属性 |
| GetFileTime | 获取文件时间 |
| GetFileInformationByHandle | 获取文件信息 |
| GetFullPathName | 获取文件的完整路径 |
| GetModuleFileName | 获取当前模块全路径 |
手动复制冰森爸爸的表格get√
所以说常用的输入输出操作都能通过WINDOWS的内置API来实现,再也不用研究C++那些个杀千刀的函数啦,啦啦啦啦啦~
二. 使用方法
想要入门WINDOWS API呢,我先达成一个小目标,比如先用机器码写一个windows操作系统。。。偶不,写一个程序来管理我磁盘上的文件。
因为我的电脑太烂了,烂到家了,不仅速度不够快,而且容量还很小。所以我所有的包都是按照逻辑联想的方法分类备份到移动硬盘上的。
导致的直接结果就是我每天需要打开二十多次Program_setup文件夹,然后一级一级的去找,我要疯啦啦啦啦啦啦!!!所以决定自己写一个管理文档的小程序。。
程序功能:找出指定路径下的所有文件,并保存文件名,文件描述,文件相对路径三个信息。建立一个文件目录表用于保存所有信息。
程序结构:后端使用windows API C++方式,或C#方式,前端使用WPF Application
1. 后端程序
search.h -用于递归所有文件
catchInfo.h -用于读取并保存文件信息
store.h -用于整理储存好的文件信息数据
query.h -用于查询表
exec.h -用于执行文件的复制,安装操作
update.h -用于更新安装包文件
| CreateFile | 创建、打开文件 |
| ReadFile | 读取文件内容 |
| WriteFile | 写入文件内容 |
| SetFilePointer | 移动文件指针 |
| SetEndOfFile | 设置文件结尾标志 |
| CopyFile | 文件拷贝 |
| DeleteFile | 文件删除 |
| MoveFile | 文件移动 |
| CreateDirectory | 创建一个目录 |
| RemoveDirectory | 删除一个目录 |
| GetCurrentDirectory | 获取当前程序所在目录 |
| SetCurrentDirectory | 设置当前程序所在目录 |
| FindFirstFile | 查找指定目录下的第一个文件 |
| FindNextFile | 查找下一个文件 |
| LockFile | 文件锁定 |
| UnlockFile | 文件解锁 |
| GetFileType | 获取文件类型 |
| GetFileSize | 获取文件的大小 |
| GetFileAttributes | 获取文件属性 |
| SetFileAttributes | 设置文件属性 |
| GetFileTime | 获取文件时间 |
| GetFileInformationByHandle | 获取文件信息 |
| GetFullPathName | 获取文件的完整路径 |
| GetModuleFileName | 获取当前模块全路径 |
C# WPF Application 下的文件操作的更多相关文章
- Linux(C/C++)下的文件操作open、fopen与freopen via Boblim
Linux(C/C++)下的文件操作open.fopen与freopen open是linux下的底层系统调用函数,fopen与freopen c/c++下的标准I/O库函数,带输入/输出缓冲. li ...
- Linux(C/C++)下的文件操作open、fopen与freopen
open是linux下的底层系统调用函数, fopen与freopen c/c++下的标准I/O库函数,带输入/输出缓冲. linxu下的fopen是open的封装函数,fopen最终还是要调用底层的 ...
- linux下的文件操作——批量重命名
概述:在日常工作中,我们经常需要对一批文件进行重命名操作,例如将所有的jpg文件改成bnp,将名字中的1改成one,等等.文本主要为你讲解如何实现这些操作 1.删除所有的 .bak 后缀: renam ...
- ubuntu下zip文件操作
转自 https://blog.csdn.net/hpu11/article/details/71524013 .zip $ zip -r myfile.zip ./* 将当前目录下的所有文件和文件夹 ...
- Linux下的文件操作——基于文件指针的文件操作(缓冲)
目录操作 创建和删除目录: 原型为: #include <sys/stat.h> #include <sys/types.h> #include <unistd.h> ...
- C# 目录下的文件操作
运用DirectoryInfo类的对象我们可以轻松的实现对目录以及和目录中的文件相关的操作,假如你要获得某个目录F:\Pictures下的所有BMP文件,那么通过下面的代码就可以实现该功能. 上面的代 ...
- Linux下的文件操作——基于文件描述符的文件操作(2)
文件描述符的复制 MMAP文件映射 ftruncate修改文件大小 文件描述符的复制 系统调用函数dup和dup2可以实现文件描述符的复制,经常用来重定向进程的stdin(0), stdout(1 ...
- linux下的文件操作
彻底删除文件 rm -rf + [文件目录 可相对可绝对] 是彻底删除而且linux无回收站 创建文件 touch + [文件名] 创建文件夹 mkdir + [文件夹名] 文件提权:chmod 77 ...
- Ubuntu下部分文件操作的命令
(1)创建目录 mkdir filefoldname (2)删除空目录 rmdir filefoldname (3)删除非空目录及其中所有文件 rm -rf filefoldname (4)移动文件或 ...
随机推荐
- leetcode334
public class Solution { public bool IncreasingTriplet(int[] nums) { var len = nums.Length; ) { retur ...
- Win7 Wifi 老断线
在cmd命令窗口 netsh wlan set autoconfig enabled=no interface="无线网络连接" 此时你再来查看Win7系统任务栏处的网络菜单中查找 ...
- web开发-CORS支持
一.简介 Web 开发经常会遇到跨域问题,解决方案有:jsonp,iframe,CORS 等等 1.1.CORS与JSONP相比 1.JSONP只能实现GET请求,而CORS支持所有类型的HTTP请求 ...
- fatal error C1010: 在查找预编译头时遇到意外的文件结尾 (转)
错误描述:fatal error C1010: 在查找预编译头时遇到意外的文件结尾.是否忘记了向源中添加“#include "stdafx.h"”? 错误分析: 此错误发生 ...
- MongoDB数据仓储
本篇是作为另一篇随笔的一部分‘搭建一个Web API项目’ MogonDB官网:https://www.mongodb.org/ 安装过程参考园友的分享http://www.cnblogs.com/l ...
- Blending
[Blending] Blending is used to make transparent objects. When graphics are rendered, after all shade ...
- Python 爬虫之 Scrapy 分布式原理以及部署
Scrapy分布式原理 关于Scrapy工作流程 Scrapy单机架构 上图的架构其实就是一种单机架构,只在本机维护一个爬取队列,Scheduler进行调度,而要实现多态服务器共同爬取数据关键就是共享 ...
- 详细探究Spark的shuffle实现
Background 在MapReduce框架中,shuffle是连接Map和Reduce之间的桥梁,Map的输出要用到Reduce中必须经过shuffle这个环 节,shuffle的性能高低直接影响 ...
- Swiper thymeleaf
html页面: <div class="swiper-container swiper_tjzt"> <div class="swiper-wrappe ...
- spring4-1-Spring的简单介绍
Spring4.0 是 Spring 推出的一个重大版本升级,进一步加强了 Sring 作为 Java 领域第一开源平台的地位.Spring4.0 引入了众多 Java 开发者期盼的新特性,如泛型依赖 ...