资源简介
.eap文件使用Enterprise architect打开。
项目是模拟cmd功能实现的,主要是在虚拟文件系统中实现cd、dir、mkdir、rmdir、copy、compare、del等命令。
代码片段和文件信息
#include “stdafx.h“
#include “CdCmd.h“
bool CdCmd::Execute(Dirobject* rootDir MyListject>* workingPath)
{
bool flag = true;
Dirobject* curPosition = rootDir;
Dirobject* dirNode = NULL;
MyString tempDirName;
//路径类型
int dirType = this->path1Type;
switch(dirType)
{
case msg.FLOD_PATH://相对路径
//遍历workingPath定位到当前目录
workingPath->InitList();
while(workingPath->GetNextNode() != NULL)
{
tempDirName = workingPath->GetCurNode()->GetDirName();
curPosition = curPosition->Find(tempDirName);
if(curPosition == NULL)
{
flag = false;
break;
}
}
//遍历pathElesList找到指定位置,没有找到,返回false
if(flag)
{
pathElesList.InitList();
while(pathElesList.GetCurNode() != NULL)
{
tempDirName = pathElesList.GetCurNode()->GetDirName();
if(curPosition->Find(tempDirName)!=NULL)
{
//更新工作目录
Dirobject* dirNode = new VirtualFold(tempDirName);
workingPath->AddNode(*dirNode);
}
else
{
//路径不存在
flag = false;
break;
}
pathElesList.GetNextNode();
}
}
break;
case msg.FLOD_WHOLE_PATH://绝对路径
workingPath->Empty();
pathElesList.InitList();
//添加盘符
tempDirName = pathElesList.GetCurNode()->GetDirName();
dirNode = new VirtualFold(tempDirName);
workingPath->AddNode(*dirNode);
while(pathElesList.GetNextNode() != NULL)
{
tempDirName = pathElesList.GetCurNode()->GetDirName();
if(curPosition->Find(tempDirName)!=NULL)
{
//创建目录
dirNode= new VirtualFold(tempDirName);
workingPath->AddNode(*dirNode);
curPosition = curPosition->Find(tempDirName);
}
else
{
flag = false;
break;
}
}
break;
case msg.BACK_TO_PARENT://返回到上一目录
workingPath->InitList();
while(workingPath->GetNextNode() != NULL)
{
dirNode = workingPath->GetCurNode();
}
workingPath->DelNode(*dirNode);
break;
case msg.BACK_TO_ROOT://返回到根目录
workingPath->InitList();
//添加盘符
tempDirName = workingPath->GetCurNode()->GetDirName();
dirNode = new VirtualFold(tempDirName);
workingPath->Empty();
workingPath->AddNode(*dirNode);
break;
default:
flag = false;
}
if(flag)
{
std::cout << “命令执行成功“ << std::endl;
}
else
{
std::cout << “命令执行失败“ << std::endl;
}
return flag;
}
void CdCmd::SetPath1Type(int path1Type)
{
this->path1Type = path1Type;
}
int CdCmd::GetPath1Type()
{
return path1Type;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 67584 2015-02-15 14:38 虚拟磁盘项目\1虚拟磁盘项目——任务.doc
文件 2803712 2015-02-15 00:12 虚拟磁盘项目\VirtualDisk.eap
文件 114688 2015-02-15 14:03 虚拟磁盘项目\代码\virtualDiskSys\Debug\virtualDiskSys.exe
文件 802340 2015-02-15 14:03 虚拟磁盘项目\代码\virtualDiskSys\Debug\virtualDiskSys.ilk
文件 1108992 2015-02-15 14:03 虚拟磁盘项目\代码\virtualDiskSys\Debug\virtualDiskSys.pdb
文件 2798 2015-02-13 18:05 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CdCmd.cpp
文件 325 2015-02-13 14:29 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CdCmd.h
文件 242 2015-02-13 14:29 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\Cmd.cpp
文件 416 2015-02-13 16:14 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\Cmd.h
文件 1076 2015-02-12 20:27 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdElement.cpp
文件 324 2015-02-12 17:27 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdElement.h
文件 2017 2015-02-15 12:13 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdFactory.cpp
文件 528 2015-02-13 11:15 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdFactory.h
文件 249 2015-02-13 12:03 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdFormatCheck.cpp
文件 607 2015-02-13 12:03 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdFormatCheck.h
文件 1341 2015-02-13 11:34 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdParaAnalysis.cpp
文件 382 2015-02-13 11:15 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdParaAnalysis.h
文件 2519 2015-02-14 12:34 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdSplit.cpp
文件 334 2015-02-12 17:50 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdSplit.h
文件 1261 2015-02-14 15:21 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdTypeAnalysis.cpp
文件 203 2015-02-12 21:29 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CmdTypeAnalysis.h
文件 6901 2015-02-15 12:36 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CompareCmd.cpp
文件 733 2015-02-15 07:39 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CompareCmd.h
文件 15442 2015-02-15 11:38 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CopyCmd.cpp
文件 1082 2015-02-15 08:58 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CopyCmd.h
文件 966 2015-02-15 10:25 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CreateNewCmd.cpp
文件 602 2015-02-15 10:24 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\CreateNewCmd.h
文件 8556 2015-02-15 14:03 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\Debug\BuildLog.htm
文件 57114 2015-02-15 12:29 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\Debug\CdCmd.obj
文件 27116 2015-02-15 12:29 虚拟磁盘项目\代码\virtualDiskSys\virtualDiskSys\Debug\Cmd.obj
............此处省略97个文件信息
相关资源
- 基于颜色识别的火焰检测算法的open
- GNSS-SDR_manual.pdf (v0.0.9)
- 企业费用管理系统
- 研发项目管理方法(RDPM)(第一版第
- 通联支付项目资料含demo.zip
- 准高级项目经理高级信息系统项目管
- 基于ssm的校园电商项目
- 项目静态页面
- servlet论坛项目
- 项目二-51单片机-倒车雷达控制系统设
- Qt GUI 界面通用系统模板 源码
- zw_qq_38663729-10543766-安卓项目.zip
- 《UML面向对象分析、建模与设计》课
- 英雄联盟10.26最新走A
- 基于QT的捕鱼达人小游戏
- Vue全家桶+ElementUI后台管理项目模板
- zw_TwoCare-C远程控制软件整个项目代码
- 4379262zw_完整的通讯录项目源码.zip
- 两个吃一个棋类游戏
- opencv3.4.3 mingw32编译
- 《城市公交站点设置的优化分析》项
- springmvc+swaggerz整合项目.zip
- 路灯控制系统开源
- qt-vsaddin-msvc2017-2.2.2.vsix
- 项目案例:制作1号店网站
- vue家政金融项目
- 基于SSM框架--超市管理系统项目+实验
- mvc小项目
- NOIP2019提高组突破营课件.rar
- 嗖嗖移动大厅嗖嗖移动项目答辩
评论
共有 条评论