C中对文件的处理:能否用(\n)换行?
来源:百度知道 编辑:UC知道 时间:2024/06/04 07:17:23
#include<stdio.h>
#include <stdlib.h>
void main()
{
FILE *fp;
// Blocknode Block;
if((fp=fopen("data.txt","rw"))==NULL)
{
printf("不能打开文件%s.\n",fp);
exit(0);
}//printf("OK");//fprintf(fp,"OKgfghgh");
char ch;
int linenum=0;//记录的读到的行数
while(!feof(fp))
{
do
{
ch=fgetc(fp);
}while(ch!=';');//从文件读入字符
ch=fgetc(fp); //读到'\n'后判断下一个字符
if(ch!='\n')
{
ch='\n'; //换行
linenum++;
}
}
// return(linenum);
printf("%d\n",linenum);
fclose(fp);
}
不能做处理 为什么?"\n" 不可用吗?要怎么改?????
#include <stdlib.h>
void main()
{
FILE *fp;
// Blocknode Block;
if((fp=fopen("data.txt","rw"))==NULL)
{
printf("不能打开文件%s.\n",fp);
exit(0);
}//printf("OK");//fprintf(fp,"OKgfghgh");
char ch;
int linenum=0;//记录的读到的行数
while(!feof(fp))
{
do
{
ch=fgetc(fp);
}while(ch!=';');//从文件读入字符
ch=fgetc(fp); //读到'\n'后判断下一个字符
if(ch!='\n')
{
ch='\n'; //换行
linenum++;
}
}
// return(linenum);
printf("%d\n",linenum);
fclose(fp);
}
不能做处理 为什么?"\n" 不可用吗?要怎么改?????
printf("不能打开文件%s.\n",fp); fp是一个文件指针 你是想输出文件名吧 格式控制字符串当然可以用'\n'
windows中,在文件里面,换行符是\r\n
Mac中,是\r
Unix\linux中,是\n
所以用\r\n代替\n就可以换行。
看不懂
二楼得分