【发布时间】:2014-09-24 09:45:45
【问题描述】:
您好,我在理解 Ifstream 和 Ofstream 时遇到了一些问题。我正在尝试从名为“thefile.txt”的预制文件中导入文本,该文件包含:
Google (GOOG)
522.01 2 100
520.66 1.5 80
Apple (AAPL)
389.27 2 150
401.82 1.8 150
Microsoft (MSFT)
25.06 2.5 100
25.07 2 80
这里是代码块:
fin.open(inputfile);
fin >> stockname1 >> buyingcost1 >> commission1 >> shares1 >> sellingcost1 >> sellingcomish1 >> sharessold1
>> stockname2 >> buyingcost2 >> commission2 >> shares2 >> sellingcost2 >> sellingcomish2 >> sharessold2
>> stockname3 >> buyingcost3 >> commission3 >> shares3 >> sellingcost3 >> sellingcomish3 >> sharessold3;
fin.close();
所有内容都正确声明,我已经“#”包含了所有需要包含的内容,但是当我尝试访问变量时,它们仍然是空的。
【问题讨论】:
-
我们需要更多信息。请添加变量声明。你也没有检查
fin是否仍然是good()(或者曾经在open()之后)。 -
很可能是您的工作目录中不存在该文件。第一步是验证文件是否已成功打开。将您的输入包装在
if (fin)条件中,在else分支中打印错误消息。 -
好吧,把整个程序扔到代码部分可以吗?
-
目前
stockname1将读取Google和buyingcost1将尝试读取(GOOG),因为>>一次只能读取一个单词。 -
@HalpMehPlz 不,把你的整个程序放在这里是不行的。您应该显示一个minimal version,它会重现相同的行为。