gpt4 book ai didi

C++在更改后删除文本文件中的空格

转载 作者:搜寻专家 更新时间:2023-10-31 00:19:26 24 4
gpt4 key购买 nike

好吧,我的简单程序遇到了另一个问题。我的程序获取文本文件,读取它,然后删除最后一个符号并输出包含更改的新文本文件。它会按照我的意愿进行所有操作,只是会删除所有空格。有什么解决方案吗?这是代码:

#include <iostream>
#include <fstream>
using namespace std;
int main()
{
char symbols[10000];
ofstream outFile("outFile.out");
ifstream inFile("inFile.in");

for(int i=0;i<10000;i++)
{
inFile >> symbols[i];
}

for(int j=0;j<10000;j++)
{
if(symbols[j]=='\0')
{
symbols[j-1] ='\0';
break;
}
}

if(outFile.is_open())
{
for(int l=0;l<10000;l++)
{
outFile << symbols[l];
}
}

inFile.close();
outFile.close();
return 0;
}

附言我的意思是如果我给它一个文本世界,你好

它输出 Helloworl空格神奇地消失了..

最佳答案

>>> 提取运算符与 char 类型一起使用时,会从输入文件中读取下一个非空白 字符。因此,这将跳过您输入中的所有空格。

您可以使用 noskipws操纵器关闭此功能,如下所示:

inFile >> noskipws >> symbols[i];

或者,您可以避免使用 >>> 运算符。你可以使用 istream::read()例如。

关于C++在更改后删除文本文件中的空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8281196/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com