gpt4 book ai didi

c++ - 从 txt 文件中读取以字符分隔的元素

转载 作者:行者123 更新时间:2023-12-02 09:48:36 24 4
gpt4 key购买 nike

我正在开发一个程序,文件中有名字、姓氏和数字,我需要将这些信息读入我的程序。我的实际问题是有些人没有第二个名字或第二个姓氏。为了解决这个问题,我开始尝试从文件中读取,直到找到特定字符,例如:

Robert, Ford Black,208   //Where Robert is the first name, and Ford Black are his two last names
George Richard, Bradford,508 //Where George Richard are both his first names, and Bradford is his only last
name
我将此信息保存在三个分隔的字符串中,一个将存储名字和第二个名字,第一个和第二个姓氏,第三个用于数字。
我试图只使用来自 c++ 的 native 库。
我一直在阅读 getline(a,b,c) 和 IStringStream 实际上可以解决我的问题,但我不知道如何正确实现它

最佳答案

只需使用 std::getline用分隔符从字符串流中读出。请参阅下面的简化示例(无错误检查):

for (std::string line; std::getline(std::cin, line); )
{
std::string firstName, lastName;
std::istringstream iss(line);
std::getline(iss, firstName, ','); // A comma delimits end-of-input
iss >> std::ws; // Skip over any whitespace characters
std::getline(iss, lastName); // Read remaining line
std::cout << "First Name: " << firstName << std::endl;
std::cout << "Last Name: " << lastName << std::endl;
}
注意 iss >> std::ws; 行使用 std::ws来自 <iomanip>是否有多余的空白字符(在您的示例中出现在逗号之后)。
我假设输入中的 C++ 行注释只是这个问题的注释,而不是实际输入的一部分。

关于c++ - 从 txt 文件中读取以字符分隔的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62526234/

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