fileoperate.h

来自「用c语言编写的一个文本编辑器,实现编辑文字」· C头文件 代码 · 共 87 行

H
87
字号
//文件处理操作


PBigStr input_file(char filename[])//读入文件
{
	FILE *fp;
	PBigStr pstr=create_nullstr();
	char ch;
	fp=fopen(filename,"r");
	if (fp==NULL)
	{
		printf("File not found\n");
		return NULL;
	}
	else
	{
		ch=fgetc(fp);
		while (ch!=EOF)//逐个字符读入
		{
			insert_char(pstr,ch);
			ch=fgetc(fp);
		}
		fclose(fp);
	}
	return pstr;
}
int output_file(char *filename,PBigStr pstr)//输出文件
{
	FILE *fp;
	char ch;
	PBigStr node=pstr;
	int i;
	fp=fopen(filename,"w");
	if (fp==NULL)
	{
		printf("Cannot output file\n");
		fclose(fp);
		return 0;
	}
	else
	{
		while (node->link!=NULL)//逐个结点输出
		{
			for (i=0;i<80;i++)
			{
				ch=node->pc[i];
				if (ch!='\0')//如果读到结束符的时候输出换行
					fputc(ch,fp);
				else
				{
					fputc('\n',fp);
					break;
				}
			}
			node=node->link;
		}
        for (i=0;i<80;i++)
		{
			ch=node->pc[i];
			if (ch!='\0')//如果读到结束符的时候输出换行
				fputc(ch,fp);
			else
			{
				fputc('\n',fp);
				break;
			}
		}
		fclose(fp);
		return 1;
	}
}

void print_str(PBigStr pstr)//打印整个编辑区
{
	PBigStr node=pstr;
	int i=1;
	while (node->link!=NULL)
	{
		print_line(i,pstr);
		i++;
		node=node->link;
	}
    print_line(i,pstr);
	printf("\n");
	return;
}

⌨️ 快捷键说明

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