gpt4 book ai didi

c++ - 从 C++ 中的空格读取文件

转载 作者:太空宇宙 更新时间:2023-11-04 15:07:43 25 4
gpt4 key购买 nike

我正在从一个文件中读取并将数组(指针)的前面传递回我的主函数。我遇到的问题是它没有复制单词之间的空格。例如 Hello Hello 输出为 HelloHello

我一开始使用的是 getLine,但遇到了文件大小的问题。我将它设置为 500,因为没有文件会大于 500,但是大多数文件都会低于 500,我正在尝试获取文件的确切大小。

这是我的代码:

char infile()
{
const int SIZE=500;
char input[SIZE];
char fromFile;
int i=0;

ifstream readFile;
readFile .open("text.txt");
while(readFile>>fromFile)
{
input[i]=fromFile;
i++;
}
cout<<endl;
returnArray=new char[i];//memory leak need to solve later
for(int j=0;j<i;j++)
{
returnArray[j]=input[j];
cout<<returnArray[j];
}
cout<<endl;
}
return returnArray[0];
}

最佳答案

根据您的文件格式,您可能希望使用 ifstream::read()ifstream::getline()

operator >> 将在读取数据流时尝试“标记化”或“解析”数据流,使用空格作为标记之间的分隔符。您有兴趣从完整保留空格的文件中获取原始数据,因此您应该避免使用它。如果您想一次读取一行数据,使用换行符作为分隔符,您应该使用 getline()。否则使用 read()

关于c++ - 从 C++ 中的空格读取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10157732/

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