好气哦,电脑好烂,每天花大把的时间在等电脑反应上。

没有钱买新电脑,连组台式机的钱都没有。好气哦。

啊啊啊啊文件操作是什么鬼???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 下的文件操作的更多相关文章

  1. Linux(C/C++)下的文件操作open、fopen与freopen via Boblim

    Linux(C/C++)下的文件操作open.fopen与freopen open是linux下的底层系统调用函数,fopen与freopen c/c++下的标准I/O库函数,带输入/输出缓冲. li ...

  2. Linux(C/C++)下的文件操作open、fopen与freopen

    open是linux下的底层系统调用函数, fopen与freopen c/c++下的标准I/O库函数,带输入/输出缓冲. linxu下的fopen是open的封装函数,fopen最终还是要调用底层的 ...

  3. linux下的文件操作——批量重命名

    概述:在日常工作中,我们经常需要对一批文件进行重命名操作,例如将所有的jpg文件改成bnp,将名字中的1改成one,等等.文本主要为你讲解如何实现这些操作 1.删除所有的 .bak 后缀: renam ...

  4. ubuntu下zip文件操作

    转自 https://blog.csdn.net/hpu11/article/details/71524013 .zip $ zip -r myfile.zip ./* 将当前目录下的所有文件和文件夹 ...

  5. Linux下的文件操作——基于文件指针的文件操作(缓冲)

    目录操作 创建和删除目录: 原型为: #include <sys/stat.h> #include <sys/types.h> #include <unistd.h> ...

  6. C# 目录下的文件操作

    运用DirectoryInfo类的对象我们可以轻松的实现对目录以及和目录中的文件相关的操作,假如你要获得某个目录F:\Pictures下的所有BMP文件,那么通过下面的代码就可以实现该功能. 上面的代 ...

  7. Linux下的文件操作——基于文件描述符的文件操作(2)

    文件描述符的复制 MMAP文件映射 ftruncate修改文件大小 文件描述符的复制 ​ 系统调用函数dup和dup2可以实现文件描述符的复制,经常用来重定向进程的stdin(0), stdout(1 ...

  8. linux下的文件操作

    彻底删除文件 rm -rf + [文件目录 可相对可绝对] 是彻底删除而且linux无回收站 创建文件 touch + [文件名] 创建文件夹 mkdir + [文件夹名] 文件提权:chmod 77 ...

  9. Ubuntu下部分文件操作的命令

    (1)创建目录 mkdir filefoldname (2)删除空目录 rmdir filefoldname (3)删除非空目录及其中所有文件 rm -rf filefoldname (4)移动文件或 ...

随机推荐

  1. 读《分布式一致性原理》JAVA客户端API操作2

    创建节点 通过客户端API来创建一个数据节点,有一下两个接口: public String create(final String path, byte data[], List<ACL> ...

  2. H264码流中SPS PPS详解<转>

    转载地址:https://zhuanlan.zhihu.com/p/27896239 1 SPS和PPS从何处而来? 2 SPS和PPS中的每个参数起什么作用? 3 如何解析SDP中包含的H.264的 ...

  3. spring cloud zuul 配置(Robbin 和 熔断)

    #启动负载均衡的重试机制,默认falsespring.cloud.loadbalancer.retry.enabled=true#Hystrix是否启用超时时间hystrix.command.defa ...

  4. Hibernate多对多关联映射的HQL中的in条件查询问题

    群里有朋友求解一个问题,高分求一条HQL多对多查询语句 . 问题描述见 http://topic.csdn.net/u/20090621/16/4eac6fe0-bf3e-422e-a697-f758 ...

  5. BAT脚本编写教程

    windows批处理 (cmd/bat) 编程详解 开始之前先简单说明下cmd文件和bat文件的区别:在本质上两者没有区别,都是简单的文本编码方式,都可以用记事本创建.编辑和查看.两者所用的命令行代码 ...

  6. Webdings和Wingdings字符码对应表

    刚才研究动网论坛代码,发现一个页面提示标记 i 感觉很神奇,看了半天才明白原来是一种叫“Webdings”的字体,其实很简单,只需要<font face='webdings' size=&quo ...

  7. Openssl rsa命令

    一.简介 Rsa命令用于处理RSA密钥.格式转换和打印信息 二.语法 openssl rsa [-inform PEM|NET|DER] [-outform PEM|NET|DER] [-in fil ...

  8. js闭包原理与例子[转]

    闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现. 一.闭包原理: 一.变量的作用域 要理解闭包,首先必须理解Javascript特殊的变量作用域 ...

  9. SSL技术白皮书

    首页产品技术操作系统ComwareV5安全和VPN SSL技术白皮书 下载 收藏 打印 推荐 摘自:http://www.h3c.com/cn/d_200812/622834_30003_0.htm# ...

  10. Part2_lesson4---ARM寻址方式

    所谓寻址方式就是处理器根据指令中给出的信息来找到指令所需操作数的方式. 1.立即数寻址 ADD R0,R0,#0x3f; R0<-R0+0x3f 在以上指令中,第二个源操作数即为立即数,要求以“ ...