读取/写入文件C ++的几个未知大小的结构

时间:2017-10-13 07:47:02

标签: c++ database file file-io fstream

我想创建一个图书数据库来记录我读过的书。到目前为止,我有一个书籍结构。

Tmonitor.exit

如您所见,标题和作者变量的大小不确定。我想在一个文件中存储几个结构,然后在我想显示数据库时读取所有这些结构。

我如何从文件中读取/写入其中几个结构?我必须有预定的尺寸吗?请举例说明。

1 个答案:

答案 0 :(得分:1)

您可以通过以下方式轻松将其存储为CSV格式:

title_1,author_1,pages_1,title_2,author_2,pages_2,title_3,auth...

回读文件时,根据分隔符解析文件,然后又备份数据。

修改的: 正如@Mark Setchell建议你不应该使用' ,'作为分隔符,因为逗号也可能是标题本身的一部分。相反,你应该使用一个更罕见的字符作为分隔符,这在经常可能的书名中并不经常使用。一些例子是' ;' ' |'或者' #'甚至是不可打印的角色