我想製作一個書籍數據庫來記錄我讀過的書籍。到目前爲止,我有一本書入門的結構。讀/寫幾個未知大小的結構文件C++
struct Entry
{
string title;
string author;
int pages;
};
正如您所看到的,標題和作者變量的大小未確定。我想在一個文件中存儲幾個結構,然後在我想要顯示數據庫時讀取所有這些結構。
如何從文件讀取/寫入這些結構中的幾個?我必須有預定的尺寸嗎?請舉一個例子。
我想製作一個書籍數據庫來記錄我讀過的書籍。到目前爲止,我有一本書入門的結構。讀/寫幾個未知大小的結構文件C++
struct Entry
{
string title;
string author;
int pages;
};
正如您所看到的,標題和作者變量的大小未確定。我想在一個文件中存儲幾個結構,然後在我想要顯示數據庫時讀取所有這些結構。
如何從文件讀取/寫入這些結構中的幾個?我必須有預定的尺寸嗎?請舉一個例子。
,你可以很容易地將其存儲在一個CSV格式的方式如下:
title_1,author_1,pages_1,title_2,author_2,pages_2,title_3,auth...
讀取時迴文件,然後根據您的分離解析文件,你必須回到你的數據。
編輯: 爲@馬克瑟特查建議你不應該使用「,
」作爲分隔符,因爲逗號也可能是標題本身的一部分。相反,你應該使用更罕見的字符作爲分隔符,這在書名中不常用。一些實例是「;
」「|
」或「#
」或甚至不可打印字符
由於逗號可以出現在書名中,所以它們可能不是最適合用作CSV的分隔符,因爲標題中的逗號會使解析器相信它現在已經轉移到作者身上。 。你可能更喜歡'|'作爲分隔符,甚至NULL。 –
好的建議 –
你會需要發明一種文件格式,都描述和包含例如該數據:<長度的場><長度 - 現場>等 –
到目前爲止你做了什麼?你可以添加代碼,你如何寫入文件? – OutOfBound
XML或JSON可能是一個很好的格式來保存這些信息 – rak007