搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 有谁能出个好方法
标题:
有谁能出个好方法
只看楼主
xdh0817
等 级:
论坛游侠
帖 子:193
专家分:195
注 册:2011-10-20
结帖率:
92.86%
楼主
已结贴
√
问题点数:20 回复次数:9
有谁能出个好方法
我的程序处理一个文本,假设是读这个文本吧(实际当然不是这样),
读完以后这个文本末尾会多出来一个'\n',(这个'\n'是我自己加进去的,不是程序错误)
但是怎样删去这个回车符呢,也就是说怎么样删除最后的空行
手工打开文本手动删除太麻烦
最近的牛人都哪里去了啊。。。。在我最初学c的时候,好多人指点我,现在怎么,,,
[
本帖最后由 xdh0817 于 2011-11-28 17:06 编辑
]
搜索更多相关主题的帖子:
手工
2011-11-27 16:03
零波丽
来 自:莉莉斯
等 级:
论坛游侠
帖 子:222
专家分:107
注 册:2011-9-8
第
2
楼
得分:4
人又是什么?神造出来的东西。 人是人造出来的东西。
2011-11-27 17:51
hellovfp
等 级:
禁止访问
威 望:
30
帖 子:2976
专家分:7697
注 册:2009-7-21
第
3
楼
得分:4
为什么一定要删除呢?读出来的时候你可以处理掉这个\n啊。
我们都在路上。。。。。
2011-11-28 14:25
xdh0817
等 级:
论坛游侠
帖 子:193
专家分:195
注 册:2011-10-20
第
4
楼
得分:0
最近的牛人都哪里去了啊。。。。在我最初学c的时候,好多人指点我,现在怎么,,,
2011-11-28 17:06
非死亡!
来 自:四川
等 级:
蝙蝠侠
帖 子:179
专家分:760
注 册:2011-10-31
第
5
楼
得分:4
你会读取文件 你会自己在文件后加'\n' 难道不会用文件位置指针将'\n'换成\000(空字符啊)
能力 技巧
2011-11-28 17:08
leenchow
等 级:
论坛游民
帖 子:17
专家分:18
注 册:2010-3-29
第
6
楼
得分:4
回复 楼主 xdh0817
明白楼主的意思,楼主是不想读入空行。
int ReadLineStr(FILE *fp,char *dst)
{
if(fp==NULL) return -1;
int c;
char *s=dst;
while((c=fgetc(fp))!= -1 && c != '\n')
*s++=(char)c;
*s='\0';
return c;
}
上面函数读取文本文件一行数据,如果一行文本只含有'\n',那么dst的长度为0,可以据此条件忽略掉。
例如:
char LineBuf[1024];//a line data buffer
int c =0;
while( c != -1)
{
c = ReadLineStr(fp,LineBuf);
if(!strlen(LineBuf)) continue; //skip null line
......
}
不知是否解答你的问题。
2011-11-29 08:29
xdh0817
等 级:
论坛游侠
帖 子:193
专家分:195
注 册:2011-10-20
第
7
楼
得分:0
以下是引用
非死亡!
在2011-11-28 17:08:27的发言:
你会读取文件 你会自己在文件后加'\n' 难道不会用文件位置指针将'\n'换成\000(空字符啊)
是把'\n'删去,不是替换成空格!!!
2011-11-29 12:55
cnfarer
等 级:
版主
威 望:
179
帖 子:3330
专家分:21157
注 册:2010-1-19
第
8
楼
得分:4
替换成''
★★★★★
为人民服务
★★★★★
2011-11-29 13:17
xdh0817
等 级:
论坛游侠
帖 子:193
专家分:195
注 册:2011-10-20
第
9
楼
得分:0
以下是引用
cnfarer
在2011-11-29 13:17:25的发言:
替换成''
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void main()
{
FILE *fp1;
char ch;
fp1=fopen("333.txt","a");
fseek(fp1,-1*(char)sizeof(char),1);
fputc('\0',fp1);
fclose(fp1);
}
不对
2011-11-29 19:36
xdh0817
等 级:
论坛游侠
帖 子:193
专家分:195
注 册:2011-10-20
第
10
楼
得分:0
以下是引用
非死亡!
在2011-11-28 17:08:27的发言:
你会读取文件 你会自己在文件后加'\n' 难道不会用文件位置指针将'\n'换成\000(空字符啊)
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
void main()
{
FILE *fp1;
char ch;
fp1=fopen("333.txt","a");
fseek(fp1,-1*(char)sizeof(char),1);
fputc('\0',fp1);
fclose(fp1);
}
不对
2011-11-29 19:38
10
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-356346-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.785966 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved