int m=0,j=0,n;
char cs, pBuf[50];
while(cs!='\0')
{
j=m;
for(n=0;cs!='\n';n++)
{
fseek(pFile,m,SEEK_SET);
fread(&cs,sizeof(char),1,pFile);
m++;
}
fseek(pFile,j,SEEK_SET);
fread(&pBuf,sizeof(char),n-1,pFile);
pBuf[n-1]='\0';
m=m+1;
AfxMessageBox(pBuf);
}
fclose(pFile);
怎么输出的老是第一行啊??
我想要它逐行的输出来 怎么改啊???求高人指点
3 个解决方案
#1
我这个txt 文件 每行都有'\n'的。
#2
getline(&is, szBuffer);
#3
C的
C++的:
#include <stdio.h>
int main()
{
FILE * pFile;
char buf[100];
pFile = fopen ("list.txt" , "r");
if (pFile == NULL)
printf("%s","Error opening file");
else {
while (fgets(buf, 100, pFile) != NULL)
printf("%s",buf);
fclose (pFile);
}
return 0;
}
C++的:
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream fin("list.txt");
string s;
while(getline(fin,s))
cout << s << endl;
fin.close();
return 0;
}
#1
我这个txt 文件 每行都有'\n'的。
#2
getline(&is, szBuffer);
#3
C的
C++的:
#include <stdio.h>
int main()
{
FILE * pFile;
char buf[100];
pFile = fopen ("list.txt" , "r");
if (pFile == NULL)
printf("%s","Error opening file");
else {
while (fgets(buf, 100, pFile) != NULL)
printf("%s",buf);
fclose (pFile);
}
return 0;
}
C++的:
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream fin("list.txt");
string s;
while(getline(fin,s))
cout << s << endl;
fin.close();
return 0;
}