2010-01-01 40 views
0

有人可以給我一些關於將大量數據存儲到文件的提示嗎?例如:我使用C++創建音頻音序器,並且想要保存所有音頻樣本名稱(文件路徑),有關項目中音頻軌道的信息(名稱,音量,靜音,獨奏,等等)以及樣本在時間軸上放置到文件中的位置。將多個數據存儲到一個文件中

我真的不知道什麼是最好的方式來做到這一點。我不想爲此使用第三方圖書館,而且我是該語言的開始程序員。

謝謝!

回答

1

當你想在同一個文件中保存不同的信息時,有兩種流行的方式:固定長度字段和分隔字段。使用固定長度字段時,每個部分都存儲在相同大小的塊中。所以如果你想存儲5件東西,並且將它們存儲在80個字符的塊中,你可以在文件中偏移160來讀取第三個東西。

在分隔文件中,您可以在每段數據之間放置一個字符(或一系列字符),該字符可以是任意長度的。由於您的數據長度可能會有很大差異,因此我建議使用分隔存儲,可能每個分隔線上都有一個分隔線(每個分隔線之間印有「\ n」)。其他

1

嗯......這只是一個意見,但下次我會使用一個SQLite數據庫作爲文件格式。

+0

什麼SQLite?我想要做的是創建自己的文件格式,讀取和存儲數據。像例如Audacity一樣的程序。 – Midas

+0

它是一個可嵌入的SQL數據庫引擎 –

2

兩個思路來我的腦海:

1)使用XML類型的格式

2)使用你的意思是用什麼在Windows初始化文件格式

+0

我想我會看看INI文件。謝謝。 – Midas

+0

問題是:它並不是真正意義上的程序配置文件。我真的想創建自己的文件格式,以簡單的方式存儲數據,所以它可以在記事本中編輯,或者像專業程序一樣使用Photoshop,Cubase ...我想要非常標準。 – Midas

+0

如果你喜歡標準,XML是一個很好的選擇,但是要做到這一點,你需要使用XML庫(手工生成/解析XML是一種不必要的痛苦)。 (請注意,使用XML通常不足以使您的文件格式可以被其他軟件使用)如果您只需要簡單的東西,純文本格式的優點是易於實現(不需要第三方庫) ,調試時容易檢查正確性。 –

相關問題