gpt4 book ai didi

c++ - 将 TXT 行读入字符

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:55:20 26 4
gpt4 key购买 nike

我现在完全没有想法。基本上,我想读取文本文件中一行的部分内容,但这段代码不起作用,我不知道为什么:

        char temp_char  = '\0';
char _char = '\0';
while(1)
{
_places.get(temp_char);
if(temp_char == '\t')
break;

_char += temp_char;

cout << _char;
}

基本上,它应该从文件的开头读取,直到遇到制表符为止。不幸的是,它永远不会停止,并且 _char 会以大量毫无意义的随机字符的形式出现。

我查看了 TXT 文件,它是正确的编码和所有内容,制表符是文件中的普通制表符,但无论出于何种原因,我都无法使用 get 或 > 从流中读取它>.

现在我已经试验了一个小时,浏览了很多网站寻求帮助,但我一无所获......所有这些都让我感到压力......

编辑:如果这不是问题,我也可以提供其余的程序代码,但它应该是。 :/

这里是打开文件的地方:

                ifstream _places;
_places.open("ECC.txt");
if (_places.fail())
{
cout << "Could not load text file, please make sure ECC.txt is in the same folder.";
_getch();
exit(1);
}

最佳答案

首先,_char 是 std::string、char[] 还是 char*?

其次,我会使用任何一个

temp_char = _places.get()

std::string temp;
getline(_places,temp)
for (unsigned int i=0; i<temp.size(), ++i)
if (temp[i] == '\t')
break;
_char += temp[i] // assuming, and REALLY HOPING _char is a std::string

注意 ifstream 中的 get() 方法,当它们可以返回 int 时。

关于c++ - 将 TXT 行读入字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10608716/

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