⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 editor.cpp

📁 一个小型文本编辑器—— 采用C++的ASCII码文件和串函数实现 可以对文本文件进行添加
💻 CPP
字号:
#include "Utility.h"
#include "dbl_lk_list.h"
#include "String.h"
#include "Editor.h"


void main(int argc, char *argv[])	// 命令行参数
// 前提条件: 在命令行中给出输入文件和输出文件
// 操作结果: 读输入文件各行到文本缓存中,执行简单的行编辑,并写文本缓存到输出文件中
{
	char infName[256],outfName[256];

	if (argc < 2) 
	{	// argc < 2表无输入文件名
		cout << "请输入文件名(缺省: file_in.txt):";
		strcpy(infName, read_in(cin).c_str());
		if (strlen(infName) == 0)
		{	// infName为空
			strcpy(infName, "file_in.txt");
		}
	}
	else
	{	// 将argv[1]复制给infName
		strcpy(infName, argv[1]);
	}

	ifstream file_in(infName);   // 定义并打开输入文件流
	if (file_in == 0) {
		cout << "打开输入文件" << infName << "失败" << endl;
		exit(1);
	}
	
	if (argc < 3) 
	{		// argc < 3表无输出文件名
		cout << "请输出文件名(缺省: file_out.txt):";
		strcpy(outfName, read_in(cin).c_str());
		if (strlen(outfName) == 0)
		{	// outfName为空
			strcpy(outfName, "file_out.txt");
		}
	}
	else
	{	// 将argv[2]复制给outfName
		strcpy(outfName,argv[2]);
	}

	ofstream file_out(outfName);   // 定义并打开输出文件流.
	if (file_out == 0) {
		cout << "打开输入文件" << outfName << "失败" << endl;
		exit(2);
	}

	Editor buffer(&file_in, &file_out);	// 定义文本缓存
	while (buffer.get_command())
	{	// 接收并执行用户操作命令
		buffer.run_command();
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -