【发布时间】:2015-09-28 01:07:44
【问题描述】:
我正在寻找一种高效且简单的方法来从文本文件中读取大量数据。我有一个名为 Information 的类,它包含 3 个私有变量:
string location;
double latitude;
double longitude;
输入的格式将是一个巨大的文本文件,每一行的格式如下:
34.3153920 66.7239403 Seattle
我已经尝试了几条路线。
- 我试图逐行读取它并在信息构造函数中解析它,但 stod() 函数截断了我的数据。它将读取类似 34.3153 和 66.7239 的内容。
我还尝试通过 getline(ss, line, ' ') 使用空格分隔符读取它,但这也不起作用。
我不要求任何人为我编写代码,但是有没有一种简单的方法可以让我将这 3 个字段映射到我的 Information 对象,而不必使用解析器来搞砸?
感谢任何反馈,谢谢!
事实上,stod 并没有截断我的数据。截断来自我的 cout 语句中的精确度(或缺乏精确度)。
【问题讨论】:
-
the stod() function was truncating my data你确定这不是输出流的precision 的问题吗?您是如何验证数据被截断的? -
谢谢@user657267 我犯了一个非常粗心的错误,没有意识到这一点。我会解决这个问题。
-
你还需要这个答案吗?
-
我没有,我不太清楚如何标记它已回答。