我最讨厌别人这么说了。哎………………………………
----------------解决方案--------------------------------------------------------
楼上指哪位,1楼还是2楼?
----------------解决方案--------------------------------------------------------
本人是初学者
----------------解决方案--------------------------------------------------------
下面是我刚学5分钟写的,功能少点
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <dir.h>
void Instruction(void);
void RemoveFile(void);
void RenameFile(void);
void CopyFile(void);
void DisplayFile(void);
void DeleteAll(void);
void DeleteFolder(void);
int main(void)
{
int ichoice;
Instruction();
scanf("%d", &ichoice);
while (ichoice != 0)
{
switch (ichoice)
{
case 1:
RemoveFile();
break;
case 2:
RenameFile();
break;
case 3:
CopyFile();
break;
case 4:
DisplayFile();
break;
case 5:
DeleteAll();
break;
case 6:
DeleteFolder();
break;
default:
printf("Disable require.\n");
Instruction();
}
Instruction();
scanf("%d", &ichoice);
}
system("pause");
return 0;
}
void Instruction(void)
{
printf("\n请输入你的选择:0-退出:\n");
printf("1-删除指定的文件.\n");
printf("2-重命名指定的文件.\n");
printf("3-复制指定的文件.\n");
printf("4-显示指定文件的内容.\n");
printf("5-删除指定文件夹中的全部*.*文件.\n");
printf("6-删除某个指定的文件夹和其全部内容,文件夹中不能在包含子文件夹.\n\n");
}
void RemoveFile(void)
{
char filename[30], cha;
printf("请输入要删除文件的路径和文件名:\n");
fflush(stdin);
scanf("%s", filename);
printf("你确定要删除文件吗?输入'y'执行命令,输入'n'取消命令:\n");
fflush(stdin);
cha = getchar();
if (cha == 'y')
{
if ((remove(filename)) == 0)
{
printf("命令执行成功.\n");
}
else
{
printf("命令执行失败.\n");
}
}
else
{
printf("您取消了命令.\n");
}
}
void RenameFile(void)
{
char filenamea[30], filenameb[30], cha;
printf("请输入要重命名的文件路径和文件名:\n");
fflush(stdin);
scanf("%s", filenamea);
printf("请输入新的文件名:\n");
fflush(stdin);
scanf("%s", filenameb);
printf("您确定要执行命令吗?输入'y'-执行命令,输入'n'-取消命令:\n");
fflush(stdin);
cha = getchar();
if (cha == 'y')
{
if ((rename(filenamea, filenameb)) == 0)
{
printf("命令执行成功.\n");
}
else
{
printf("命令执行失败.\n");
}
}
else
{
printf("您取消了命令.\n");
}
}
void CopyFile(void)
{
char filenamea[40], cha ,filenameb[40], ctemp;
FILE *fpa, *fpb;
printf("请输入要复制的文件路径和文件名:\n");
fflush(stdin);
scanf("%s", filenamea);
printf("请输入复制后的文件路径和文件名:\n");
fflush(stdin);
scanf("%s", filenameb);
printf("您确定要执行命令吗?输入'y'-执行命令,输入'n'-取消命令:\n");
fflush(stdin);
cha = getchar();
if ((fpa = fopen(filenamea,"rb")) == NULL) //以只读方式打开2进制文件
{
printf("%s 文件打开失败.\n", filenamea);
system("pause");
exit(1);
}
if ((fpb = fopen(filenameb,"wb")) == NULL)
{
printf("%s 文件创建失败.\n", filenameb);
system("pause");
exit(1);
}
if (cha == 'y')
{
ctemp = fgetc(fpa);
while (!feof(fpa))
{
fputc(ctemp,fpb);
ctemp = fgetc(fpa);
}
fclose(fpa);
fclose(fpb);
}
else
{
printf("你取消了命令.\n");
}
}
void DisplayFile(void)
{
char filename[30], cha, ctemp;
FILE *fpa;
printf("请输入要显示文件的路径和文件名:\n");
fflush(stdin);
scanf("%s", filename);
if ((fpa = fopen(filename,"rb")) == NULL)
{
printf("%s 文件打开失败.\n", filename);
exit(1);
}
printf("您确定要执行命令吗?'y'-执行 命令,'n'-取消命令:\n");
fflush(stdin);
cha = getchar();
if (cha == 'y')
{
ctemp = fgetc(fpa);
while (!feof(fpa))
{
fputc(ctemp,stdout);
ctemp = fgetc(fpa);
}
fclose(fpa);
}
else
{
printf("您取消了命令.\n");
}
}
void DeleteAll(void)
{
char filenamea[30], cha;
printf("请输入要删除内容的文件夹路径和和文件夹名,以\"del \"后跟路径名:\n");
fflush(stdin);
gets(filenamea);
printf("你确定要删除此文件夹中的全部文件吗?'y'-执行命令,'n'取消命令:\n");
fflush(stdin);
cha = getchar();
if (cha == 'y')
{
system(filenamea);
}
else
{
printf("你取消了命令.\n");
}
}
void DeleteFolder(void)
{
char filenamea[30], filenameb[30], cha;
printf("请先删除文件夹中的全部文件:\n");
fflush(stdin);
gets(filenamea);
printf("请再输入要删除的文件夹名:\n");
fflush(stdin);
gets(filenameb);
system(filenamea);
rmdir(filenameb);
}
----------------解决方案--------------------------------------------------------
原来大家都这么牛,老是出现刚学就能编个什么管理系统甚至解释器等等.
======================================================
其实我什么都不会,但我愿意努力去学.没关系,我有的是耐心.
----------------解决方案--------------------------------------------------------
不能接受吖。感觉自己完蛋了喃。
----------------解决方案--------------------------------------------------------
-_-!6楼怎么把天空弄得这么黑,lz,你的标题是否应该改为模拟dos之简单内存文件镜像系统?你所写的功能远不及dos的百分之一,而且还没有考虑性能
----------------解决方案--------------------------------------------------------
实力这么强还是出学者我晕!那我们这些菜鸟算什么啊!
----------------解决方案--------------------------------------------------------