虚拟磁盘项目
来源:互联网 发布:thomson one数据库 编辑:程序博客网 时间:2024/04/29 19:46
使用c++编写一个console程序,可以模拟dos下文件操作的过程。在windows下,使用"开始"->"运行"->"cmd" 时,会弹出console窗口。在命令行下,输入dir, copy 等命令,可以完成磁盘文件操作功能。此项目就是编制一个程序,模拟这种功能,并且在内存中建立一个真正的内存磁盘,可以任意的创建、删除目录,拷贝、删除文件,列出目录、文件,转移当前所在路径等功能。
1使用面向对象的c++。 使用3种或以上设计模式进行编写。
2运行期间或者程序结束时,不得出现异常退出。用户可以自行使用"exit"退出。
3不得有内存泄露
4不能使用stl(字符串或其他数据结构自己实现),实现一个自己的MyString类
5使用WIN32 SDK或者C RUNTIME LIB都可
6 用户输入命令的必要容错处理和提示
1,程序运行在console窗口
2,初始提示符在C:/ ,不用创建另外的磁盘,不增加其他磁盘符
3,可以使用"mkdir" 创建目录。
目录名称小于256字符。
可以带空格。
目录命名与WINDOWS目录命名规则一致。
大小写不敏感。
目录深度任意。其
他容错处理参考dos的mkdir命令。
4,可以使用"cd"命令在不同目录下转移。
其他容错处理参考dos的cd命令。
5,可以使用"copy"命令把真正硬件磁盘上的任意目录下的文件内容
(把文件按byte拷贝到内存中。不能只记录指针或者文件名),
拷贝到虚拟磁盘任意指定目录中。
命令格式按照dos 中copy的格式。
不用处理带/可选参数。
只需要用户输入被复制文件路径和复制文件路径。
支持通配符。
其他容错处理参考dos的copy命令。
6,可以使用"del"删除任意虚拟磁盘中已经存在的一个文件。
其他容错处理参考dos的del命令。支持通配符。
7,可以使用"rmdir"删除一个目录。
可以带有 /S 命令参数。当有/s 命令时,递归删除目录下所有目录和文件。
其他容错处理参考dos的rmdir命令。
8,可以使用"dir"命令。
输出结果需要和dos下的dir一致。
可以使用 dir /ad 命令 。
可以使用dir /s 命令。
其他容错处理参考dos的dir命令。
9,使用compare 磁盘文件目录文件 虚拟磁盘文件 比较磁盘上和虚拟磁盘上2个文件的内容。
如果完全一致,输出“内容比较一致”,如果不同,输出不同内容的第一处位置,和不同内容的前16个字节。
二进制文件输出16进制数值。文本文件输出字符串。
解决方案如下
<disk.h>
<disk.cpp>
<main.cpp>
代码中有一些功能 读者 可以根据自己的需要更改FindPath()函数 来实现功能转换,写的不好 大家多多见谅
2010-12-16
- 虚拟磁盘项目
- 虚拟磁盘项目
- 开源项目-文件虚拟成磁盘
- 虚拟磁盘
- WDF虚拟磁盘驱动程序
- subst虚拟磁盘
- Ubuntu 添加虚拟磁盘
- VM虚拟磁盘合并
- 怎样创建虚拟磁盘?
- linux建立虚拟磁盘
- virtualBox 虚拟磁盘扩容
- tomcat虚拟路径的实践---javaweb项目上传视频,图片到任意磁盘文件夹
- 用DataExplorer恢复虚拟磁盘
- qemu虚拟磁盘的管理
- 增加 VirtualBox 虚拟磁盘大小
- 磁盘备份的虚拟磁带库
- linux下挂载新的虚拟磁盘
- Dokan虚拟磁盘开发实战
- winform程序之两种从email中提取用户名和域名(简单)
- android 版本和ophone版本对应
- 冷 雪
- ubuntu使用记录(备忘)
- Stop being greedy and stop to rest!
- 虚拟磁盘项目
- 【翠字营转载】爆炒唐骏学历者 是何居心?
- 是否需要写软件测试用例
- redhat linux 下FTP配置
- User Profiles and Audience Targeting in SharePoint 2007(zhuan)
- redhat linux 下FTP配置
- redhat linux 下FTP配置
- 离开
- struct file & struct inode解析