cc++中txt文件读写换行怎么实现

Python015

cc++中txt文件读写换行怎么实现,第1张

在C和C++中,使用的文件操作方式不同,读写换行也有所区别。

一、C语言。

在C语言中,以fopen打开文件,返回值为文件指针FILE*型。可以以如下方式读写换行:

1、 fgetc/fputc

该组函数功能为读写单个字符,如ch=fgetc(fp)fputc(ch, fp)

2 fscanf/fprintf

格式化输入输出函数。 以%c格式时,可以读写换行。如

fscanf(fp, "%c",&ch)

fprintf(fp,"%c",ch)

二、C++语言。

在C++中,也可以使用C语言的fopen方式,但更常用的是使用iostream对象。当以iostream对象打开时,可以通过对象进行读写换行的操作。

如对象名为file。

1、写入换行:

file<<'\n'

或者

file<<endl

2、读取换行:

ch=file.get()

或者

file.get(ch)

可以按字节读取,当读取到'\n'(换行符)时表示换行。

具体操作如下:

1、打开文件。

使用fopen函数打开文件, 由于txt为文本文件,所以模式应选择"r"或者"rt"。

比如

FILE *fp = fopen("in.txt", "r")

2、按字节读取文件,并识别换行。

int c

while((c=fgetc(fp)) != EOF)//读取文件 直到文件结尾。

    if(c=='\n') printf("get a new line\n")//识别到换行,并输出。

3、读取结束后关闭文件。

fclose(fp)

或者

fcloseall()

1 使用字符串,输出在一个字符串结尾加上“\r\n”,如“hello\r\n”

2 使用字符数组拼接成字符串(在嵌入式c的使用中是常见的),在数组末尾增加0x0d和0x0a

如:

unsigned char data[8] data[0] = ‘h’data[1] = ‘e’data[2] = ‘l’data[3] = ‘l’data[4] = ‘0’data[5] = 0x0ddata[6] = 0x0a

如果必要,可以加\0,或者等于0(’\0’的ASCII是0)。 data[7] = ‘\0’data[7] = 0然后输出即可。