gpt4 book ai didi

c++ - 从无组织的文本文件中读取整数

转载 作者:行者123 更新时间:2023-11-28 07:34:30 34 4
gpt4 key购买 nike

#include <iostream>
#include <fstream>
#include <string>
#include <cctype> // isdigit();
using namespace std;
int main()
{
ifstream fin;
fin.open("Sayı.txt");
while (!fin.eof()){
string word;
int n;
fin >> word; //First i read it as a string.
if (isdigit(word[0])){ //checks whether is it an int or not
fin.unget(); //
fin >> n; // if its a int read it as an int
cout << n << endl;
}
}
}

假设文本文件是这样的:

100200300 Glass
Oven 400500601

我的目标只是从该文本文件中读取整数并在控制台中显示它们。所以输出应该是这样的

100200300
400500601

你可以在上面看到我的尝试。作为输出,我只得到整数的最后一位。这是一个示例输出:

0
1

最佳答案

简单的只是尝试使用字符串流将读取的字符串转换为 int,如果失败则它不是整数,否则它是整数。

 ifstream fin;
istringstream iss;
fin.open("Say1.txt");

string word;
while (fin>>word )
{

int n=NULL;
iss.str(word);

iss>>n;

if (!iss.fail())
cout<<n<<endl;

iss.clear();


}

关于c++ - 从无组织的文本文件中读取整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17012256/

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