问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

c语言中把文件中的空格去除

发布网友 发布时间:2023-01-07 12:51

我来回答

4个回答

热心网友 时间:2023-10-20 05:49

  第一种:使用位域*读取的长度;

  第二种:可以直接按照结构体来读写;

  实例代码如下:

#include "stdafx.h"
#include <cstdio>
#include <cstdlib>
#include <cstring>
 
struct Roommate{
char name[6];
char NO[8];
char addr[10];
};
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    struct Roommate Rom[2] = {0};
    FILE *file = NULL;
    if(!(file = fopen("a.txt", "w"))) {
        printf("Create File failed!\n");
        exit(-1);
    }
 
    printf("Please input four times Roommate data: Name NO Addr\n");
    for(int i=0; i<2; ++i) {
        scanf("%s%s%s", Rom[0].name, Rom[0].NO, Rom[0].addr);
        fwrite((const void *)&Rom[0], sizeof(struct Roommate), 1, file);
    }
    fclose(file);
    /* Read  from file*/
    file = NULL;
    if(!(file = fopen("a.txt", "r"))) {
        printf("Create File failed!\n");
        exit(-1);
    }
    printf("Read from the file: Name NO Addr\n");
    fread((void *)Rom, sizeof(struct Roommate), 2, file);
    for(int i=0; i<2; ++i) {
        printf("i=%d   Name:%s\tNO:%s\tAddr:%s\n", i, Rom[i].name, Rom[i].NO, Rom[i].addr);
    }
    fclose(file);
 
    while(getchar()) ;
    return 0;
}

热心网友 时间:2023-10-20 05:49

你的这个 f 是文件指针,不是数据,使用 fgets(buffer, len, f); buffer为字符串也可以,然后就可以使用你的buffer++了 。

热心网友 时间:2023-10-20 05:50

#include <stdio.h>

main()
{
char acBuf[100+1];
char acBufTmp[100+1];

memset( acBuf , 0x00 , sizeof( acBuf ) );
memset( acBufTmp , 0x00 , sizeof( acBufTmp ) );

strcpy( acBufTmp , " aaa bbb ccc " ) ;
GetStr( acBufTmp , acBuf ) ;
printf( "字符串%s,字符串去掉空格的长度%d\n" , acBuf , strlen(acBuf)) ;
}

int GetStr( pcBufTmp , pcBuf )
char*pcBufTmp ;
char*pcBuf ;
{
characBuf[100+1];
characBufTmp[100+1];

int i,j=0;

for( i=0 ; i<=strlen(pcBufTmp)-1 ; i++ )
{
if( pcBufTmp[i] != ' ' )
{
pcBuf[j] = pcBufTmp[i] ;
j++ ;
}
}
}

热心网友 时间:2023-10-20 05:50

#include<stdio.h>
int main()
{
FILE *fp;
FILE *out;
char ch;

fp=fopen("1.txt","r");
if(fp==NULL)
{
printf("cannot open file\n");
exit(1);
}

out=fopen("out.txt","w");
if(fp==NULL)
{
printf("cannot create file\n");
exit(1);
}
printf("please wait...\n");

while(!feof(fp))
{
ch=fgetc(fp);
if(ch!=' ')
{
fputc(ch,out);
}
}
printf("process complete\n");
fclose(fp);
fclose(out);

return 0;
}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...结构的施工分包给其他单位那么是不是EPC总承包就不能分包 Win11玩不了地平线4如何解决_Win11玩不了地平线4怎么办 Win11玩不了地平线4如何解决_Win11玩不了地平线4怎么解决 地平线5警告显卡内存过低怎么办 极限竞速地平线5闪退怎么解决 极限竞速地平线5闪退解决方法 怎样册除手机屏幕上(精品游戏)图标 烧结普通砖有哪些 烧结普通砖都有哪些 ...4年后的年龄与弟弟3年前的年龄和是35岁。今年哥与弟各几岁??_百度... ...等于弟弟7年后的年龄,哥哥4年后与弟弟3年前的年龄的和是35岁。哥哥... VC 里 Cstring 转char* 的问题,转出来的字符串,一个字符隔一个空格,认该怎么消掉? MFC 清除字符串中的空格 怎么去掉CString 中的空格 去掉CString后面的空格,用什么函数 AOERBO NO.9882OL 求手表市场价,,,图片可有可无 12岁小孩能吃三七粉吗 乾元大通集团是骗子吗 武汉乾川光电科技有限公司怎么样? 就业推荐表没发怎么办 excel怎么自动编号排序 国无咎的简介 国无咎的简介描述 寒地稻香米与稻花香米的区别 办理护照申请书怎么写 就业推荐表没了怎么办 两同学同名同姓同年同月同日生 4g的卡无法加入中国联通2g网络,注册失败 高手指点一下:铁血丹心二胡怎么拉?按简谱G调根本就拉不准。 哪里能下载到罗文和甑妮《铁血丹心》MV? 玖月奇迹铁血丹心完整版什么节目 钉钉签字有法律效力吗 如何判断CString只有空格 新手求教,请问在c++中如何去掉空格 天涯自媒体平台如何加入具体的申请步骤有哪些 装酸菜的玻璃瓶子如何密封好? 浙江25岁小伙一天大便3次,确诊肠癌,我们该如何预防肠癌的发生? 坂本龙一宣布确诊直肠癌!得了这种病该如何治疗和护理? 金花菜的做法? 火柴人战争无尽僵尸模式一共有多少天 火柴人战争无尽模式有最后一关吗 火柴人战争遗产2僵尸皮肤在哪里找? 火柴人战争6q小老虎玩哪个版本正版无限金币版 炒金花菜的家常做法大全怎么做好吃视频 姑息治疗的不仅仅“治病”,更强调“救人” 如何成为一名专科医师 华西医科大学哪一年*建立与国际接轨的第一个姑息关怀病房 小学生居家安全小知识ppt 属猪的狮子座运势,2010年属猪的狮子座的整年运势。 北京六里屯火灾原因 北京2023年疫情牛羊肉可以吃吗? 北京市通州区堂食需要核酸么