c++ - 从文件中读取带有空格和数字数据的文本

标签 c++ parsing

所以我在这样的文本中有数据:

Alaska         200 500
New Jersey     400 300
.
.

我正在使用 ifstream 打开它。

这是类(class)作业的一部分。我们不允许一次读入整行并将其解析成不同的部分。所以想弄清楚如何阅读每一行的每一部分。

使用 >>> 只会读入 "New" for "New Jersey" 由于中间的空格/空白那个州名。尝试了很多不同的方法,例如 .get().read().getline()。我无法读入整个州名称,然后读入给定行的其余数字数据。

我想知道是否可以将整行直接读入结构。当然,结构是我们正在学习的新东西......

有什么建议吗?

最佳答案

你不能只循环读取状态名称吗?

从 cin 中读取一个字符串:如果字符串的第一个字符是数字,那么您已经到达下一个字段,您可以退出循环。否则只需将它附加到状态名称并再次循环。

关于c++ - 从文件中读取带有空格和数字数据的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46857986/

相关文章:

python - 如何在 Python 的 struct 中使用 C++ struct

c++ - Linux 中单个进程的总/可用虚拟内存

Java - 解析 HTML - 获取文本

c - 解析 C 文件

java - 可以使用 JAXB(或 JAXB + StAX)编码 XML 的一部分吗?

c++ - g++ 和 clang++ 不同的行为与静态成员的递归初始化

c++ - mbed OS 5 项目中链接了哪些文件?

c++ - 将 std::vector of Vertices 结构转换为 float*

mysql - 如何解析0000-00-00 00 :00:00?

c++ - 复杂的 C++ 文本文件 IO