C的大作业 请大家帮帮忙啊
实现一个基于命令行的文本编辑器功能:
1、 打开文件
2、 保存文件
3、 能够对文件进行查找
4、 能够对文件进行替换
5、 能够对文件进行删除
要求:
1、 不能使用Cstring.h,string等类,只能使用char* 来处理字符串
2、 能够动态的申请和分配内存
上交的内容:
1、.cpp、.h、.exe文件
2、文件命名规则:学号.cpp 学号.h 学号.exe
程序具体要求:
1、 在命令行下运行 学号.exe 出现界面如下
2、 按输入参数
a) -o filename 打开文件
b) –h 帮助信息,提示各个参数的格式和含义
c) –s filename 保存文件到filename指定的路径和文件名
d) –f stringtofind 查找stringtofind字符串,并将查到的字符串的个数在屏幕上显示,并将个数写到文件 学号_result.txt中,路径和最后-s中的filename同一个路径
e) –r sourcestring targetstring 替换字符串,将文件中的sourcestring替换成targetstring,将替换多少处显示在屏幕上,并将替换的个数和替换后的文本都写道 学号_result.txt中,路径要求同上
f) –d stringtodelete 删除字符串,将文件中的stringtodelete删除,将删除多少处显示在屏幕上,并将删除的个数和删除后的文本都写到 学号_result.txt中,路径要求同上
g) –q 退出程序
3、 当前文件的问题:
sample:
打开了c:\aaa.txt
在-d 删除之后,再执行-r时是要在原来的aaa.txt上进行-r操作,即不受-d的影响
一旦执行了-s
当前的文件就变成了-s保存的结果
如:打开c:\aaa.txt
在-d 删除之后,执行了-s
再执行-r时就是要在删除之后的文本上进行-r操作了
4、 学号_result.txt
这个文件每次写都是在文件的最后追加,不要覆盖原来的内容
要求所有的次数独占一行,写法为:-f10 -r29 -d3
所有的文本写完后空两行
sample: