使用Ifstream将数字从文本文件添加到C样式数组中
||
我在上面的标题时遇到了麻烦。我已经尝试了以下方法,但是它不能以正确的方式起作用。
void ArrayIntStorage::read(ifstream& in)
{
if(in.is_open())
{
while(!in.eof())
{
in.getline(arrayStorage, sizeof(in));
}
}
}
ofstream& ArrayIntStorage::write(ofstream &out) const
{
for (int i = 0; i < sizeof arrayStorage; i++)
{
out << arrayStorage[i] << endl;
}
return out;
}
我是C ++编程的新手,所以我可能在做一些愚蠢的事情。提前致谢。
没有找到相关结果
已邀请:
2 个回复
垫歌蝎降凤
久纳禾澎
在实践中,您可能会想要更多:如果出现错误, 文件中包含的int不够?如果包含太多? 并且您将要在失败后验证该失败 是由于文件结尾,而不是由于文件中的一些乱码 文件。或者,您可能想要(或需要)进一步验证格式, 确保一行中不超过一个int。 您的输出函数看起来几乎没问题;最后一个索引应该是
,而不是
(它返回数组中的字节数,而不是元素数)。后来,下游, 您将要检查之后是否没有错误 关闭文件;没有比这更令人沮丧的了 一个说成功的程序,实际上只有一部分 数据将其存入磁盘。