如何用C++ 删除文件的最后一个字符空格?

来源:百度知道 编辑:UC知道 时间:2024/06/15 21:41:48
例如一个txt文件里面包含着若干字符串,abc bcd cdb 我想把最后一个字符串cdb后面的空格删除,怎么实现?麻烦写出代码实现,谢谢啦!新手还没有积分,请大家帮帮忙哈!
abc那个我只是举个例子,真实文件中有上百个字符串,我只想把最后一个字符串的空格去掉。要用C++

只有一个空格么?

#include <io.h>
#include <fcntl.h>

int main(int argc , char * argv[])
{
int file = open("1.txt" , O_RDWR|O_BINARY); // 打开文件
chsize(file , filelength(file)-1); // 重设文件大小-1字节,不用重新写文件
return 0;
}

如果空格个数不确定,那就得把文件读到字符串分析处理

#include<iostream>
using namespace std;
int main()
{
char s[]="abc def ghi ";//最后有一个空格

cout<<s<<"end"<<endl;//加上end为了看到空格
cout<<s<<'\b'<<"end"<<endl;//'\b'为转义字符,表示退格
return 0;
}

/*
输出结果:
abc def ghi end
abc def ghiend//注意这里字符串s最后没有空格
*/

你是不是想把这个文件改写了?

将他读如一个CString 中,然后用CString的TrimRight函数