C++的win32里面如何从文件中读取换行符? 35

我想读取一串字符串,中间换个行。直接添加“\n”是不行的,或者回车换行也是不行的,请问合理的方法。比如:文档:abc.txt文档内容:“今天上山打老虎”目的:在WIN32... 我想读取一串字符串,中间换个行。直接添加“\n”是不行的,或者回车换行也是不行的,请问合理的方法。
比如:
文档:abc.txt
文档内容:“今天上山打老虎”
目的:在WIN32程序中读取文档并能输出“今天上山
打老虎”
展开
 我来答
百度网友c8138e9f7
2009-07-08 · TA获得超过692个赞
知道小有建树答主
回答量:182
采纳率:0%
帮助的人:274万
展开全部
按照你问题补充写了一个,在vc上调试通常。
#include <stdio.h>
#include <malloc.h>
#include <process.h>
main()
{
int i,flen;
char temp[100];
FILE *fp;
if((fp=fopen("d:\\kc1.txt","r"))==NULL)
{
printf("can not open\n");
exit(0);
}
fseek(fp,0,SEEK_END);
flen=ftell(fp); //文件长度
fseek(fp,0,SEEK_SET);
printf("%d\n",flen);
for(i=0;i<flen;i++)
{
fscanf(fp,"%c",&temp[i]);
printf("%c",temp[i]);
if((i+1)%8==0) //每显示4个中文换行
printf("\n");
}
fclose(fp);
}
vbtraz
2009-07-08 · TA获得超过5532个赞
知道大有可为答主
回答量:4152
采纳率:0%
帮助的人:4438万
展开全部
完全不理解你要做什么。 你是要读一个两行的字符串,还是要在读进来的字符串中间插个换行?

直接添加\n为什么不行?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2009-07-08
展开全部
istream& get ( char& c );
istream& get ( char* s, streamsize n );
istream& get ( char* s, streamsize n, char delim );
istream& get ( streambuf& sb);
istream& get ( streambuf& sb, char delim ); 可以用这个,delim为空格。

例子:

[16:03:01@~/c-cpp]$ cat input.txt 这是输入文件
first
second third

[16:03:17@~/c-cpp]$ cat a.cpp
#include <iostream>
#include <fstream>
using namespace std;

int main()
{
ifstream ifs("input.txt");
char buf[100];
ifs.get(buf, 100, ' '); 用空格分割字符串,字符串可以有换行符
cout << buf; 输出
return 0;
}
[16:03:29@~/c-cpp]$ g++ a.cpp
[16:03:32@~/c-cpp]$ ./a.out 这里的输出字符串就有了换行符
first
second[16:03:33@~/c-cpp]$
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
奕羽飞扬
2009-07-08 · 超过25用户采纳过TA的回答
知道答主
回答量:110
采纳率:0%
帮助的人:0
展开全部
直接添加 "\\n"可以不
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友3aa3dec
2009-07-08 · TA获得超过343个赞
知道小有建树答主
回答量:309
采纳率:0%
帮助的人:143万
展开全部
试一下"\r\n".
不过我觉得"\n"应该可以换行啊。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式