一種卡拉ok節(jié)目數(shù)據(jù)存儲方法
【技術領域】
[0001]本發(fā)明涉及一種卡拉OK節(jié)目數(shù)據(jù)存儲方法。
【背景技術】
[0002]目前一般卡拉OK廳供人們演唱的卡拉OK歌曲數(shù)以萬計,對這些歌曲節(jié)目的管理都會引入一個數(shù)據(jù)庫,以便對節(jié)目實現(xiàn)快速的查找。但是歌曲數(shù)據(jù)本身與數(shù)據(jù)庫之間完全分離,這種設計的最大缺陷就是數(shù)據(jù)庫的記錄和存儲設備上歌曲存在脫節(jié),數(shù)據(jù)庫上有的記錄在存儲設備上找不到(可能硬盤損壞或人為不小心刪除),或者是存儲設備上有而數(shù)據(jù)庫上找不到記錄。
【發(fā)明內容】
[0003]本發(fā)明的目的在于提供一種設計合理,使用查找方便快捷,能夠實現(xiàn)卡拉OK節(jié)目數(shù)據(jù)和卡拉OK節(jié)目管理數(shù)據(jù)庫緊密相關的一種卡拉OK節(jié)目數(shù)據(jù)存儲方法。
[0004]本發(fā)明一種卡拉OK節(jié)目數(shù)據(jù)存儲方法,包括以下步驟:
[0005]把歌曲相關信息編碼成UTF8數(shù)據(jù)結構,存儲在歌曲數(shù)據(jù)的尾部,歌曲數(shù)據(jù)和歌曲相關信息一起構成一個卡拉OK節(jié)目數(shù)據(jù);
[0006]通過讀取每個所述卡拉OK節(jié)目數(shù)據(jù)尾部的歌曲相關信息,生成卡拉OK節(jié)目管理數(shù)據(jù)庫。
[0007]本發(fā)明一種卡拉OK節(jié)目數(shù)據(jù)存儲方法,把歌曲相關信息編碼成UTF8數(shù)據(jù)結構,存儲在歌曲數(shù)據(jù)的尾部時,先把所述歌曲數(shù)據(jù)按512字節(jié)的倍數(shù)補齊,再在歌曲數(shù)據(jù)的尾部添加512字節(jié)用于保存歌曲相關信息。
[0008]本發(fā)明一種卡拉OK節(jié)目數(shù)據(jù)存儲方法,所述歌曲相關信息包括版本號、節(jié)目編號、節(jié)目全局編號、節(jié)目名稱、演唱者名字、節(jié)目所用語言、節(jié)目名字長度、節(jié)目所屬類別、節(jié)目默認存儲盤符、節(jié)目默認存儲路徑、節(jié)目原始發(fā)行區(qū)域、節(jié)目存儲格式、節(jié)目演唱者性別、節(jié)目備注、節(jié)目拼音索引、節(jié)目點擊率統(tǒng)計、節(jié)目筆畫索引、節(jié)目發(fā)行時間。
[0009]本發(fā)明一種卡拉OK節(jié)目數(shù)據(jù)存儲方法,通過把歌曲相關信息存儲在歌曲數(shù)據(jù)的尾部,構成一個完整的卡拉OK節(jié)目數(shù)據(jù),再通過讀取每個所述卡拉OK節(jié)目數(shù)據(jù)尾部的歌曲相關信息,生成卡拉OK節(jié)目管理數(shù)據(jù)庫,使卡拉OK節(jié)目數(shù)據(jù)與卡拉OK節(jié)目管理數(shù)據(jù)庫緊密相關,減少差錯,設計合理,使用查找方便快捷。
[0010]下面結合附圖對本發(fā)明的一種卡拉OK節(jié)目數(shù)據(jù)存儲方法作進一步詳細說明。
【附圖說明】
[0011]圖1為本發(fā)明的一種卡拉OK節(jié)目數(shù)據(jù)存儲方法中構成一個卡拉OK節(jié)目數(shù)據(jù)的流程圖;
[0012]圖2為本發(fā)明的一種卡拉OK節(jié)目數(shù)據(jù)存儲方法中讀取卡拉OK節(jié)目數(shù)據(jù)尾部的歌曲相關信息的流程圖。
【具體實施方式】
[0013]本發(fā)明一種卡拉OK節(jié)目數(shù)據(jù)存儲方法,包括以下步驟:
[0014]把歌曲相關信息編碼成UTF8數(shù)據(jù)結構,存儲在歌曲數(shù)據(jù)的尾部,歌曲數(shù)據(jù)和歌曲相關信息一起構成一個卡拉OK節(jié)目數(shù)據(jù);
[0015]通過讀取每個卡拉OK節(jié)目數(shù)據(jù)尾部的歌曲相關信息,生成卡拉OK節(jié)目管理數(shù)據(jù)庫。
[0016]參見圖1,其中構成一個卡拉OK節(jié)目數(shù)據(jù)的具體流程如下:
[0017]I)、打開歌曲數(shù)據(jù)文件;
[0018]2)、判斷歌曲數(shù)據(jù)大??;
[0019]3)、如果歌曲數(shù)據(jù)大小不為512字節(jié)的倍數(shù),在文件尾部填入0,使文件大小為512字節(jié)的倍數(shù);
[0020]4)、在歌曲數(shù)據(jù)文件的尾部增加512字節(jié)用于寫入歌曲相關信息,構成一個完整的卡拉OK節(jié)目數(shù)據(jù);
[0021]5)、關閉文件。
[0022]參見圖2,讀取卡拉OK節(jié)目數(shù)據(jù)尾部的歌曲相關信息的具體流程如下:
[0023]I)、打開卡拉OK節(jié)目數(shù)據(jù)文件;
[0024]2)、指針移動到文件的尾部;
[0025]3)、從文件尾部向文件頭方向移動512字節(jié)(一個扇區(qū));
[0026]4)、從文件指針當前位置讀取歌曲相關信息;
[0027]5)、關閉文件。
[0028]因為存儲設備磁盤的每個扇區(qū)大小默認是512字節(jié),文件大小是512字節(jié)的倍數(shù)可以使操作系統(tǒng)讀數(shù)據(jù)的效率最高。把文件大小按512字節(jié)的倍數(shù)補齊后,再在文件的末尾添加512字節(jié),在這512字節(jié)中保存歌曲相關信息,這樣可使讀數(shù)據(jù)的程序打開文件后移動到文件末尾,然后后移一個扇區(qū)即可讀到所需信息,高效快捷。另外,由于歌曲相關信息存放在歌曲數(shù)據(jù)的尾部,對原歌曲數(shù)據(jù)不造成任何損害,保證其完整性。
[0029]另外,歌曲相關信息包括版本號、節(jié)目編號、節(jié)目全局編號、節(jié)目名稱、演唱者名字、節(jié)目所用語言、節(jié)目名字長度、節(jié)目所屬類別、節(jié)目默認存儲盤符、節(jié)目默認存儲路徑、節(jié)目原始發(fā)行區(qū)域、節(jié)目存儲格式、節(jié)目演唱者性別、節(jié)目備注、節(jié)目拼音索引、節(jié)目點擊率統(tǒng)計、節(jié)目筆畫索引、節(jié)目發(fā)行時間。
[0030]歌曲相關信息可用c語言編碼成如下數(shù)據(jù)結構:
[0031]char ver[14];
[0032]char sid[22];
[0033]char gid[22];
[0034]char name [62];
[0035]char star [32];
[0036]char Iang[22];
[0037]char Ieng[14];
[0038]char type [22];
[0039]char disk[14];
[0040]char path [22];
[0041]char area [14];
[0042]char mtvorvcd[18];
[0043]char sex [18];
[0044]char temp [38];
[0045]char qindex [18];
[0046]char hothit [42];
[0047]char bihua[10];
[0048]char date [14]。
【主權項】
1.一種卡拉OK節(jié)目數(shù)據(jù)存儲方法,其特征在于包括以下步驟: 把歌曲相關信息編碼成UTF8數(shù)據(jù)結構,存儲在歌曲數(shù)據(jù)的尾部,歌曲數(shù)據(jù)和歌曲相關信息一起構成一個卡拉0K節(jié)目數(shù)據(jù); 通過讀取每個所述卡拉0K節(jié)目數(shù)據(jù)尾部的歌曲相關信息,生成卡拉0K節(jié)目管理數(shù)據(jù)庫。2.根據(jù)權利要求1所述的一種卡拉0K節(jié)目數(shù)據(jù)存儲方法,其特征在于:把歌曲相關信息編碼成UTF8數(shù)據(jù)結構,存儲在歌曲數(shù)據(jù)的尾部時,先把所述歌曲數(shù)據(jù)按512字節(jié)的倍數(shù)補齊,再在歌曲數(shù)據(jù)的尾部添加512字節(jié)用于保存歌曲相關信息。3.根據(jù)權利要求2所述的一種卡拉0K節(jié)目數(shù)據(jù)存儲方法,其特征在于:所述歌曲相關信息包括版本號、節(jié)目編號、節(jié)目全局編號、節(jié)目名稱、演唱者名字、節(jié)目所用語言、節(jié)目名字長度、節(jié)目所屬類別、節(jié)目默認存儲盤符、節(jié)目默認存儲路徑、節(jié)目原始發(fā)行區(qū)域、節(jié)目存儲格式、節(jié)目演唱者性別、節(jié)目備注、節(jié)目拼音索引、節(jié)目點擊率統(tǒng)計、節(jié)目筆畫索引和節(jié)目發(fā)行時間。
【專利摘要】一種卡拉OK節(jié)目數(shù)據(jù)存儲方法,包括以下步驟:把歌曲相關信息編碼成UTF8數(shù)據(jù)結構,存儲在歌曲數(shù)據(jù)的尾部,歌曲數(shù)據(jù)和歌曲相關信息一起構成一個卡拉OK節(jié)目數(shù)據(jù);通過讀取每個所述卡拉OK節(jié)目數(shù)據(jù)尾部的歌曲相關信息,生成卡拉OK節(jié)目管理數(shù)據(jù)庫。把歌曲相關信息編碼成UTF8數(shù)據(jù)結構,存儲在歌曲數(shù)據(jù)的尾部時,先把所述歌曲數(shù)據(jù)按512字節(jié)的倍數(shù)補齊,再在歌曲數(shù)據(jù)的尾部添加512字節(jié)用于保存歌曲相關信息。其目的在于提供一種設計合理、使用查找方便快捷,能夠實現(xiàn)卡拉OK節(jié)目數(shù)據(jù)和卡拉OK節(jié)目管理數(shù)據(jù)庫緊密相關的一種卡拉OK節(jié)目數(shù)據(jù)存儲方法。
【IPC分類】G10H1/36, G06F3/06, G06F17/30
【公開號】CN105320658
【申請?zhí)枴緾N201410243347
【發(fā)明人】韓曉亮, 孫海江, 石剛, 李洪福
【申請人】北京軍區(qū)政治部文化工作和網(wǎng)絡宣傳教育中心
【公開日】2016年2月10日
【申請日】2014年6月4日