两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

機(jī)器可讀目錄數(shù)據(jù)顯示方法

文檔序號(hào):6618967閱讀:275來(lái)源:國(guó)知局
專利名稱:機(jī)器可讀目錄數(shù)據(jù)顯示方法
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)顯示技術(shù),特別涉及一種機(jī)器可讀目錄數(shù)據(jù)顯示方法, 屬于計(jì)算機(jī)信息處理中圖書館自動(dòng)化管理技術(shù)領(lǐng)域。
背景技術(shù)
才幾器可讀目錄(Machine Readable Catalogue, MARC)數(shù)據(jù)是對(duì)圖書、 文獻(xiàn)、情報(bào)等的編目進(jìn)行計(jì)算機(jī)處理后,以代碼形式和特定結(jié)構(gòu)記錄在計(jì)算 才幾存儲(chǔ)載體上的、用計(jì)算機(jī)識(shí)別與閱讀的目錄。MARC數(shù)據(jù)可以包括多條記 錄,每條記錄代表一個(gè)書目信息。每條記錄包括如下四部分頭標(biāo)區(qū)、目次 區(qū)、數(shù)據(jù)區(qū)和記錄結(jié)束符。頭標(biāo)區(qū)位于每條記錄的首部,其長(zhǎng)度為24個(gè)字符, 用于起始一條記錄。目次區(qū)位于頭標(biāo)區(qū)之后,由一個(gè)或多個(gè)目次項(xiàng)組成;每 個(gè)目次項(xiàng)對(duì)應(yīng)一個(gè)數(shù)據(jù)字段,用于描述對(duì)應(yīng)的數(shù)據(jù)字段,包括對(duì)應(yīng)的數(shù)據(jù)字 段的字段標(biāo)識(shí)符、長(zhǎng)度、位置和說(shuō)明符。數(shù)據(jù)區(qū)位于目次區(qū)之后,由與目次 項(xiàng)相同個(gè)數(shù)的數(shù)據(jù)字段組成,每個(gè)數(shù)據(jù)字段包括字段指示符和字段內(nèi)容;每 個(gè)數(shù)據(jù)字段以字段分隔符結(jié)尾,每個(gè)數(shù)據(jù)字段又可以被分隔為多個(gè)子字段, 子字段之間用子字段標(biāo)識(shí)符隔開。記錄結(jié)束符位于數(shù)據(jù)區(qū)之后、每條記錄的 結(jié)尾,用記錄結(jié)束符標(biāo)志記錄結(jié)束。目前,子字段標(biāo)識(shí)符、字段分隔符、記 錄結(jié)束符均采用GB 1988 (ISO 646 )或GB13000 (ISO/IEC 10646 )規(guī)定的控 制功能字符。子字,更標(biāo)識(shí)符IS1,雙八位編碼為001F;字段分隔符IS2,雙八 位編碼為001E;記錄結(jié)束符IS3,雙八位編碼為001D。
隨著圖書館自動(dòng)化管理進(jìn)程的發(fā)展,很多少數(shù)民族語(yǔ)言文字的圖書、文 獻(xiàn)、情報(bào)等資料也參與到計(jì)算機(jī)編目進(jìn)程中。例如,傳統(tǒng)蒙古文、藏文、維 吾爾文、朝鮮文等。在這些語(yǔ)言文字之中,傳統(tǒng)蒙古文的顯示方式比較特殊,它是一種從上到下輸出、從左到右換行的顯示方式。MARC數(shù)據(jù)在保存時(shí),
語(yǔ)言文字的顯示信息是不被保存的,例如,蒙古文"(對(duì)應(yīng)的漢語(yǔ)為"蒙 古"),在保存時(shí)是以"一,,(對(duì)應(yīng)于漢語(yǔ)為"^4o")形式保存的。
發(fā)明人在實(shí)現(xiàn)本發(fā)明的過(guò)程中發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在如下問(wèn)題現(xiàn)有在 顯示MARC數(shù)據(jù)時(shí),是直接將保存的MARC數(shù)據(jù)進(jìn)行橫向顯示,例如,蒙
古文"f"(對(duì)應(yīng)于漢語(yǔ)為"蒙古")被顯示成"^"(對(duì)應(yīng)于漢語(yǔ)為"鎮(zhèn)如")。 而這種橫向顯示的方法不符合蒙古文的閱讀方式,為了方便閱讀或者其他的 目的,需要對(duì)MARC數(shù)據(jù)進(jìn)行豎向顯示,例如,將保存的蒙古文"^"(對(duì)
應(yīng)于漢語(yǔ)為"絲如,,)顯示成"f ,,(對(duì)應(yīng)于漢語(yǔ)"蒙古,,)。但是,現(xiàn)有 技術(shù)中缺乏對(duì)MARC數(shù)據(jù)豎向顯示的方法。

發(fā)明內(nèi)容
本發(fā)明是提供一種機(jī)器可讀目錄數(shù)據(jù)顯示方法,解決現(xiàn)有技術(shù)中缺乏對(duì) MARC數(shù)據(jù)豎向顯示的問(wèn)題。
為此,本發(fā)明提供了一種機(jī)器可讀目錄數(shù)據(jù)顯示方法,包括 分別獲取MARC數(shù)據(jù)中的數(shù)據(jù)單元;
獲取與所述數(shù)據(jù)單元對(duì)應(yīng)的顯示屬性,所述顯示屬性包括輸出角度; 根據(jù)所述輸出角度確定所述數(shù)據(jù)單元是否需要豎向輸出顯示; 對(duì)需要豎向輸出顯示的數(shù)據(jù)單元進(jìn)行文字垂直旋轉(zhuǎn)后,輸出顯示;對(duì)不 需要豎向輸出顯示的數(shù)據(jù)單元直接輸出顯示;并且各數(shù)據(jù)單元按照從上到下 的順序依次輸出顯示。
由上述技術(shù)方案可知,本發(fā)明通過(guò)對(duì)需要豎向輸出顯示的數(shù)據(jù)單元進(jìn)行 文字垂直旋轉(zhuǎn)后輸出顯示,可以實(shí)現(xiàn)對(duì)上述數(shù)據(jù)單元的豎向顯示;將各數(shù)據(jù) 單元按照從上到下的順序依次輸出顯示,可以實(shí)現(xiàn)對(duì)MARC數(shù)據(jù)中整個(gè)字段 內(nèi)容的豎向顯示。本發(fā)明通過(guò)上述方案,可以實(shí)現(xiàn)MARC數(shù)據(jù)豎向顯示。


圖1為本發(fā)明第一實(shí)施例的方法流程示意圖; 圖2為本發(fā)明第二實(shí)施例的方法流程示意圖3為本發(fā)明第二實(shí)施例中處理并顯示當(dāng)前字段的方法流程示意圖4為本發(fā)明實(shí)施例中豎向顯示字段標(biāo)識(shí)符的顯示示意圖5為本發(fā)明實(shí)施例中橫向顯示字段標(biāo)識(shí)符的顯示示意圖6為本發(fā)明實(shí)施例中豎向顯示字段指示符的顯示示意圖7為本發(fā)明實(shí)施例中橫向顯示字段指示符的顯示示意圖8為本發(fā)明實(shí)施例中字段標(biāo)識(shí)符升序排列的顯示示意圖9為本發(fā)明實(shí)施例中字段標(biāo)識(shí)符降序排列的顯示示意圖IO為本發(fā)明實(shí)施例中從左到右換行處理的顯示示意圖11為本發(fā)明實(shí)施例中從右到左換行處理的顯示示意圖12為本發(fā)明實(shí)施例中第一條記錄的顯示結(jié)果;
圖13為本發(fā)明實(shí)施例中第二條記錄的顯示結(jié)果。
具體實(shí)施例方式
下面通過(guò)附圖和實(shí)施例,對(duì)本發(fā)明的技術(shù)方案做進(jìn)一步的詳細(xì)描述。 圖1為本發(fā)明第一實(shí)施例的方法流程示意圖,包括 步驟ll:分別獲取MARC數(shù)據(jù)中的數(shù)據(jù)單元;
步驟12:獲取與所述數(shù)據(jù)單元對(duì)應(yīng)的顯示屬性,所述顯示屬性包括輸出 角度;
步驟13:根據(jù)所述輸出角度確定所述數(shù)據(jù)單元是否需要豎向輸出顯示; 步驟14:對(duì)需要豎向輸出顯示的數(shù)據(jù)單元進(jìn)行文字垂直旋轉(zhuǎn)后,輸出顯
示;對(duì)不需要豎向輸出顯示的數(shù)據(jù)單元直接輸出顯示;并且各數(shù)據(jù)單元按照
從上到下的順序依次輸出顯示。具體的,可以預(yù)先設(shè)置一張對(duì)應(yīng)表,該對(duì)應(yīng)表中保存各種數(shù)據(jù)單元與輸
出角度的對(duì)應(yīng)關(guān)系,當(dāng)輸出角度為o度時(shí)表明對(duì)應(yīng)的數(shù)據(jù)單元是橫向輸出顯 示的,例如,漢字編碼區(qū)間內(nèi)的數(shù)據(jù)單元為橫向輸出顯示,則輸出角度對(duì)應(yīng)
為0;當(dāng)輸出角度為-90度或者270度表明對(duì)應(yīng)的數(shù)據(jù)單元是豎向輸出顯示的, 例如,ASCII字母編碼區(qū)對(duì)應(yīng)的輸出角度為270;阿拉伯文、維吾爾文、哈薩 克文字母編碼區(qū)對(duì)應(yīng)的輸出角度為-90。蒙古文字母編碼區(qū)對(duì)應(yīng)的輸出角度為 270。
本實(shí)施例通過(guò)對(duì)需要豎向輸出顯示的數(shù)據(jù)單元進(jìn)行文字垂直旋轉(zhuǎn)后輸出 顯示,可以實(shí)現(xiàn)對(duì)上述數(shù)據(jù)單元的豎向顯示;將各數(shù)據(jù)單元按照從上到下的 順序依次輸出顯示,可以實(shí)現(xiàn)對(duì)MARC數(shù)據(jù)中整個(gè)字段內(nèi)容的豎向顯示。本 發(fā)明通過(guò)上述方案,可以實(shí)現(xiàn)MARC數(shù)據(jù)豎向顯示。
由于MARC數(shù)據(jù)包括一條或者多條書目記錄,每條記錄的數(shù)據(jù)區(qū)包括一 個(gè)字段或者多個(gè)字段,每個(gè)字段包括字段指示符和字段內(nèi)容,每個(gè)字段內(nèi)容 包括一個(gè)或多個(gè)數(shù)據(jù)單元,其中,數(shù)據(jù)單元可以為單個(gè)漢字或者以空格或其 他字符分隔的詞,詞包括拉丁字母組成的詞或少數(shù)民族語(yǔ)言字詞等,例如, 一個(gè)漢字"書"為一個(gè)lt據(jù)單元, 一個(gè)字母組成的詞"Catalogue"也為一個(gè)
數(shù)據(jù)單元, 一個(gè)蒙古文詞"I"(對(duì)應(yīng)于漢語(yǔ)為"蒙古,,)也為一個(gè)數(shù)據(jù)單 元??梢岳斫獾氖?,現(xiàn)有技術(shù)在存儲(chǔ)MARC數(shù)據(jù)時(shí)也是按照數(shù)據(jù)單元進(jìn)行存 儲(chǔ)的。因此,第一實(shí)施例的處理流程可以是循環(huán)流程,逐次處理每個(gè)字段、 每條記錄。具體的可參見下述的實(shí)施例。
圖2為本發(fā)明第二實(shí)施例的方法流程示意圖,包括-.
步驟201:讀取MARC數(shù)據(jù)。
步驟202:判斷MARC數(shù)據(jù)是否合法,若合法,執(zhí)行步驟203,否則, 執(zhí)行步驟212。
由于MARC數(shù)據(jù)需要符合一定的規(guī)范,因此可以預(yù)先設(shè)定判斷規(guī)則,符 合規(guī)范的MARC數(shù)據(jù)為合法的。步驟203:確定MARC數(shù)據(jù)中未處理完的記錄的條數(shù)N。由于在MARC 數(shù)據(jù)中包括記錄結(jié)束符,因此可以根據(jù)記錄結(jié)束符及處理情況確定MARC數(shù) 據(jù)中未處理完的記錄的條數(shù)N。
步驟204:判斷N是否大于O,若是,執(zhí)行步驟205,否則,執(zhí)行步驟
212。
步驟205:讀取未處理完的記錄中的第一條記錄,作為當(dāng)前記錄。 步驟206:確定當(dāng)前記錄中未處理的字段的個(gè)數(shù)M。 由于MARC數(shù)據(jù)的數(shù)據(jù)區(qū)的字段用字段分隔符隔開,因此,可以根據(jù)字 段分隔符及處理情況確定未處理的字段的個(gè)數(shù)M。
步驟207:判斷M是否大于0,若是,執(zhí)行步驟208,否則,執(zhí)行步驟
211。
步驟208:讀取當(dāng)前記錄中未處理的字段中的第一個(gè)字段,作為當(dāng)前 字段。
步驟209:處理并輸出顯示當(dāng)前字段。
具體包括對(duì)當(dāng)前字段中的字段內(nèi)容中各數(shù)據(jù)單元進(jìn)行豎向顯示,即, 對(duì)需要豎向輸出處理的數(shù)據(jù)單元進(jìn)行文字垂直旋轉(zhuǎn)后,輸出顯示;對(duì)不需要 豎向輸出處理的數(shù)據(jù)單元直接輸出顯示;并且各數(shù)據(jù)單元按照從上到下的順 序依次輸出顯示。當(dāng)已顯示的數(shù)據(jù)單元的個(gè)數(shù)達(dá)到預(yù)先設(shè)定的豎向顯示閾值 時(shí),將待顯示的需要整詞折行的數(shù)據(jù)單元整體進(jìn)行從左到右或者從右到左的 換行處理后,與其余的待顯示的數(shù)據(jù)單元仍舊按照從上到下的順序依次輸出 顯示。對(duì)當(dāng)前字段的字段標(biāo)識(shí)符、字段指示符可以豎向或橫向顯示。按照升 序方式或者降序方式,對(duì)各字段標(biāo)識(shí)符進(jìn)行豎向顯示輸出或者橫向顯示輸出。
步驟210:將未處理的字段的個(gè)數(shù)減1 (M-l)之后,重復(fù)執(zhí)行步驟
207。
步驟211:將未處理完的記錄的條數(shù)減1 (N-l )之后,重復(fù)執(zhí)行步驟
204。步驟212:結(jié)束。
本實(shí)施例通過(guò)循環(huán)依次處理各字段和各記錄,可以〗吏保存的MARC 數(shù)據(jù)均為豎向顯示。
圖3為本發(fā)明第二實(shí)施例中處理并顯示當(dāng)前字段的方法流程示意圖, 包括
步驟301:讀取一個(gè)字段標(biāo)識(shí)符及與該字段標(biāo)識(shí)符對(duì)應(yīng)的字段指示符。 之后,執(zhí)行步驟302及步驟313。
步驟302:獲取與該字段標(biāo)識(shí)符對(duì)應(yīng)的字段名稱。之后,執(zhí)行步驟303 及步驟313。
MARC數(shù)據(jù)在保存時(shí)不包括字段名稱,但是現(xiàn)有技術(shù)中對(duì)各字段標(biāo)識(shí) 符對(duì)應(yīng)的字段名稱進(jìn)行了定義,具體的可參見《新版中國(guó)機(jī)讀目錄格式使 用手冊(cè)》\國(guó)家圖書館編\7-5013-2198-1\北京圖書館出版社,2004。因此, 根據(jù)上述對(duì)應(yīng)關(guān)系,可以獲取各字段標(biāo)識(shí)符對(duì)應(yīng)的字段名稱。
步驟303:獲取與該字段標(biāo)識(shí)符對(duì)應(yīng)的字段內(nèi)容。
步驟304:確定該字段內(nèi)容中未處理的數(shù)據(jù)單元的個(gè)數(shù)L,并判斷L 是否大于O,若是,執(zhí)行步驟305,否則,執(zhí)行步驟314。
步驟305:判斷該數(shù)據(jù)單元是否為需要豎向輸出顯示的數(shù)據(jù)單元,若 是,執(zhí)行步驟306,否則,執(zhí)行步驟313。
步驟306:判斷該數(shù)據(jù)單元是否為整詞折行,若是,執(zhí)行步驟307,否 則,執(zhí)行步驟311。
步驟307:判斷該數(shù)據(jù)單元是否為從左到右的輸出方式,若是,執(zhí)行步 驟308,否則,執(zhí)行步驟309。
具體地,數(shù)據(jù)單元的顯示屬性中可以包括是否需要整詞折行及輸出方式, 根據(jù)顯示屬性可以確定某一數(shù)據(jù)單元是否需要整詞折行及輸出方式為從左到 右、從右到左或從上到下。
其中,整詞折行是指整個(gè)數(shù)據(jù)單元作為一個(gè)整體進(jìn)行換行,例如,當(dāng)需要換行(從左到右換行或者從右到左換行)時(shí),數(shù)據(jù)單元"Catalogue"整體 換到下一列,而不是其中的某些字母被換到下一列。在保存時(shí),需要整詞折 行的數(shù)據(jù)單元可以是以空格或其他分隔符為間隔由字母或數(shù)字組成的數(shù)據(jù)單 元,該需要整詞折行的數(shù)據(jù)單元不能斷開顯示;不需要整詞折行的數(shù)據(jù)單元 是數(shù)據(jù)單元與數(shù)據(jù)單元之間不進(jìn)行間隔,斷開顯示也能正確表述詞義的數(shù)據(jù) 單元。
其中,從左到右的輸出方式是指在橫向時(shí),數(shù)據(jù)單元的詞首位于整個(gè)數(shù) 據(jù)單元的最左側(cè),詞尾位于整個(gè)數(shù)據(jù)單元的最右側(cè);從右到左的輸出方式是 指在橫向時(shí),數(shù)據(jù)單元的詞首位于整個(gè)數(shù)據(jù)單元的最右側(cè),詞尾位于整個(gè)數(shù) 據(jù)單元的最左側(cè);從上到下的輸出方式是指文字是垂直輸出的,詞首位于 整個(gè)數(shù)據(jù)單元的最上方,詞尾位于整個(gè)單元的最下方。 一般的語(yǔ)言文字, 例如,漢文、英文、藏文、朝鮮文等都是屬于從左到右輸出的;阿拉伯文、 維吾爾文、哈薩克文、柯爾克孜文等都是從右到左輸出的;傳統(tǒng)蒙古文是 屬于從上到下輸出的。
步驟308:以該數(shù)據(jù)單元的詞首為軸沿逆時(shí)針?lè)较蛐D(zhuǎn)270度或沿順時(shí) 針?lè)较蛐D(zhuǎn)-90度。之后,執(zhí)行步驟310。
步驟309:以該數(shù)據(jù)單元的詞尾為軸沿逆時(shí)針?lè)较蛐D(zhuǎn)-90度或沿順時(shí)針 方向旋轉(zhuǎn)270度。之后,執(zhí)行步驟310。
步驟310:整詞折行處理。具體的,當(dāng)已顯示的數(shù)據(jù)單元的個(gè)數(shù)達(dá)到預(yù) 先設(shè)定的顯示閾值時(shí),將整個(gè)數(shù)據(jù)單元換到下一列(當(dāng)從左到右換行顯示時(shí), 顯示在當(dāng)前列的右側(cè),當(dāng)從右向左換行顯示時(shí),顯示在當(dāng)前列的左側(cè));當(dāng) 已顯示的數(shù)據(jù)單元的個(gè)數(shù)沒有達(dá)到預(yù)先"i殳定的顯示閾值時(shí),旋轉(zhuǎn)后輸出。
步驟311:以數(shù)據(jù)單元中的單個(gè)字為單位進(jìn)行處理。例如,當(dāng)不需要整 詞折行時(shí),原來(lái)以數(shù)據(jù)單元"Catalogue"為單位的處理,變?yōu)橐?Catalogue" 中每個(gè)字母為單位進(jìn)行處理。具體的處理過(guò)程與以數(shù)據(jù)單元為單位的處理相同。步驟311之后執(zhí)行步驟313。
步驟312:將未處理的數(shù)據(jù)單元的個(gè)數(shù)減1 (L-l),之后,重復(fù)執(zhí)行 步驟304。
步驟313:輸出顯示到編輯框。
其中,對(duì)于字段標(biāo)識(shí)符和字段指示符的顯示,可以根據(jù)預(yù)先的設(shè)定進(jìn) 行橫向顯示或者豎向顯示。
對(duì)于字段名稱的顯示可以采用上述對(duì)字段內(nèi)容的處理方式,以數(shù)據(jù)單 元為單位進(jìn)行處理(包括垂直旋轉(zhuǎn)或者直接輸出),以豎向方式顯示。
對(duì)于字段內(nèi)容及字段名稱中的各數(shù)據(jù)單元,按照從上到下的順序依次 輸出到編輯框,進(jìn)而顯示。
并且,每個(gè)字段按照字段名稱、字段標(biāo)識(shí)符、字段指示符、字段內(nèi)容 的順序進(jìn)行從上到下的輸出顯示。
具體實(shí)現(xiàn)可以通過(guò)在編輯框內(nèi)定義一 個(gè)四行的列矩陣,將字段名稱輸 出到第一行、字段標(biāo)識(shí)符輸出到第二行、字段指示符輸出到第三行、字段 內(nèi)容輸出到第四行。
步驟314:結(jié)束該字段的處理。
下面以 一 個(gè)例子"i兌明上述流禾呈
假設(shè)計(jì)算機(jī)存儲(chǔ)介質(zhì)中存儲(chǔ)的MARC數(shù)椐為
第一條記錄
01616nam0#2200313絲#45絲0010005001441000005001571010005001982000 0050020621000050034021500050043831200050046951000050058660600050063% 90000500755(^絲0000057569⑥弁弁Sa20070626dl997絲絲ekmy0mony0121絲弁弁zz⑥ 1 #$amon@ 1 #$aW^ #oW#Tu<W7#WW$M'#<VT*in^Tr//),#TT!jT<i#v\W#ywr!TuWv:)@##$aWr< Sci^弁W!r^y弁^Wo^c^TW弁o^,Sdl997⑥弁弁Sa378弁^T3jTT^d20cn^弁Sa^w^ 《#"#{W#W)#W#^#"#>r^#W#o^W#>x/#,@0#$a蒙古語(yǔ)言文學(xué)研究$AMeng#Gu#Yu#Yan#Wen#Xue#Yan#Jiu@##$a"U^#<W$xW^#"bW,#wfV^$x^^ "$乂>>^#"#< ^@絲$&1291.206$v3@%
第二條記錄
01616nam0#2200313#絲45絲0010005000961000005001091010005001502000 00500158510000500208510000500241 @^0000057570@##$a20080518dl 997絲## ekmy0mony0121##^zz@l#$amon@l#$a軟件設(shè)計(jì) $f張君著 $9Ruan#Jian#She#Ji$FZhang#Jun@0#$a#^w#WV^U@##$a^~~^'^"@%
上述兩條記錄為完整的記錄存儲(chǔ)格式,因?yàn)樽幼侄螛?biāo)識(shí)符、字段分隔 符、記錄結(jié)束符都為不可見控制功能字符。為醒目起見,其中"$"代表子 字段標(biāo)識(shí)符ISl, "@"代表字段分隔符IS2, "%"代表記錄結(jié)束符IS3; 記錄中的空格符(0020)用字符"#,,表示;。
第一步,讀取MARC數(shù)據(jù),將MARC數(shù)據(jù)讀取到內(nèi)存后,判斷該 MARC數(shù)據(jù)是否合法(本實(shí)施例假設(shè)合法)。
第二步,確定MARC數(shù)據(jù)的記錄的條數(shù)N,本實(shí)施例N=2。
第三步,依次分別處理顯示第一條記錄和第二條記錄。
針對(duì)某條記錄,執(zhí)行如下步驟
(1) 確定該條記錄中的字段的個(gè)數(shù)M。本實(shí)施例第一條記錄的字段 的個(gè)數(shù)M-11;第二條記錄的字段的個(gè)數(shù)M-7。
(2) 依次分別處理顯示該記錄中的每個(gè)字段。 以第一條記錄為例,
本實(shí)施例的第 一 條記錄中的第 一 個(gè)字段為記錄頭標(biāo)區(qū) "01616nam0#2200313^#45##"。無(wú)字段標(biāo)識(shí)符和字段指示符。
假設(shè)各字段在從左到右的方向上按照升序排列,則將字段名稱"記錄 頭標(biāo)區(qū)"輸出到矩陣Matrix的第一行第一列,即放在矩陣(二維數(shù)組) Matrix的元素Matrix [O][O]位。由于第1個(gè)字段無(wú)字段標(biāo)識(shí)符合字段指示符,所以元素Matrix [l][O]位、元素Matrix [2]
位空白。將字段內(nèi)容 "01616namO弁2200313絲弁45絲,,放在元素Matrix [3]
位。
按照第一個(gè)字段的處理方式,處理余下的字段。即,將第i(i>=2) 個(gè)字段的字段名稱放在元素Matrix [O][i-l]位,將第i個(gè)字段的字段標(biāo)識(shí)符 放在元素Matrix [l][i-l]位,將第i個(gè)字段的字段指示符i文在元素Matrix [2][i-l]位,將第i個(gè)字段的字段內(nèi)容放在元素Matrix [3][i-l]位。
輸出顯示矩陣Matrix[]4 M i 。
其中,字段標(biāo)識(shí)符和字段指示符可以設(shè)置成豎向顯示或者橫向顯示的 方式;字段標(biāo)識(shí)符可以按照升序或者降序的順序排列;數(shù)據(jù)單元可以按照 從左到右的順序換行處理,也可以按照從右到左的順序換行處理。
圖4為本發(fā)明實(shí)施例中豎向顯示字段標(biāo)識(shí)符的顯示示意圖。圖5為本 發(fā)明實(shí)施例中橫向顯示字段標(biāo)識(shí)符的顯示示意圖。圖6為本發(fā)明實(shí)施例中 豎向顯示字段指示符的顯示示意圖。圖7為本發(fā)明實(shí)施例中橫向顯示字段 指示符的顯示示意圖。在實(shí)現(xiàn)時(shí),由于字段標(biāo)識(shí)符和字段指示符在保存時(shí) 不保存數(shù)據(jù)的顯示信息,因此,橫向顯示時(shí)可以直接讀取顯示,豎向顯示 時(shí)需要進(jìn)行垂直旋轉(zhuǎn)后顯示。
圖8為本發(fā)明實(shí)施例中字段標(biāo)識(shí)符升序排列的顯示示意圖。圖9為本 發(fā)明實(shí)施例中字段標(biāo)識(shí)符降序排列的顯示示意圖。在實(shí)現(xiàn)時(shí),針對(duì)從左到 右方向,升序排列可以是將字段標(biāo)識(shí)符按照升序依次放在從左到右的列 中,降序排列可以是將字段標(biāo)識(shí)符按照升序依次放在從右到左的列中。
圖IO為本發(fā)明實(shí)施例中從左到右換行處理的顯示殺意圖。圖11為本 發(fā)明實(shí)施例中從右到左換行處理的顯示示意圖。在實(shí)現(xiàn)時(shí),可以在每個(gè)字 段的字段內(nèi)容處再次定義一個(gè)二維數(shù)組;當(dāng)從左到右換行時(shí),各字段內(nèi)容 中的數(shù)據(jù)單元按照從上到下,從左到右的順序放在字段內(nèi)容處的二維數(shù)組 中;當(dāng)從右到左換行時(shí),各字段內(nèi)容中的數(shù)據(jù)單元按照從上到下,從右到 左的順序放在字段內(nèi)容處的二維數(shù)組中。當(dāng)然,字段名稱中的數(shù)據(jù)單元也可以采用上述字段內(nèi)容中的數(shù)據(jù)單元的處理方式顯示。
根據(jù)上述流程可以得到第一條記錄的顯示結(jié)果。同理,第二條記錄的 顯示結(jié)果也可以采用上述原理實(shí)現(xiàn)。
圖12為本發(fā)明實(shí)施例中第一條記錄的顯示結(jié)果。圖13為本發(fā)明實(shí)施 例中第二條記錄的顯示結(jié)果。參見圖12、 13,針對(duì)本實(shí)施例,字段標(biāo)識(shí)符 和字段指示符均采用豎向顯示的方式,字段標(biāo)識(shí)符按照升序排列方式顯 示,圖12采用從右到左的換行方式,圖13采用從左到右的換行方式。
當(dāng)然,按照上述方法,也可以實(shí)現(xiàn)混排時(shí)的數(shù)據(jù)顯示,所謂"混排" 是指在一個(gè)字段內(nèi)容中存在多種字體,例如,存在漢字、蒙古文、英語(yǔ)。
由上述方案及顯示圖可知,本發(fā)明實(shí)施例通過(guò)以數(shù)據(jù)單元為單位對(duì) MARC數(shù)據(jù)進(jìn)行處理,可以實(shí)現(xiàn)MARC數(shù)據(jù)的豎向顯示。對(duì)于實(shí)現(xiàn)豎向 輸出文字的圖書、文獻(xiàn)、情報(bào)的計(jì)算機(jī)編目、提高圖書、文獻(xiàn)、情報(bào)的自 動(dòng)化管理和應(yīng)用水平、增強(qiáng)圖書、文獻(xiàn)、情報(bào)的利用有很大的意義。
本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述方法實(shí)施例的全部或部分步 驟可以通過(guò)程序指令相關(guān)的硬件來(lái)完成,前述的程序可以存儲(chǔ)于一計(jì)算機(jī) 可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),執(zhí)行包括上述方法實(shí)施例的步驟; 而前述的存儲(chǔ)介質(zhì)包括ROM、 RAM、磁碟或者光盤等各種可以存儲(chǔ)程 序代碼的介質(zhì)。
最后應(yīng)說(shuō)明的是以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案而非對(duì)其進(jìn) 行限制,盡管參照較佳實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技 術(shù)人員應(yīng)當(dāng)理解其依然可以對(duì)本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換, 而這些修改或者等同替換亦不能使修改后的技術(shù)方案脫離本發(fā)明技術(shù)方案的 精神和范圍。
權(quán)利要求
1、一種機(jī)器可讀目錄數(shù)據(jù)顯示方法,其特征在于,包括分別獲取MARC數(shù)據(jù)中的數(shù)據(jù)單元;獲取與所述數(shù)據(jù)單元對(duì)應(yīng)的顯示屬性,所述顯示屬性包括輸出角度;根據(jù)所述輸出角度確定所述數(shù)據(jù)單元是否需要豎向輸出顯示;對(duì)需要豎向輸出顯示的數(shù)據(jù)單元進(jìn)行文字垂直旋轉(zhuǎn)后,輸出顯示;對(duì)不需要豎向輸出顯示的數(shù)據(jù)單元直接輸出顯示;并且各數(shù)據(jù)單元按照從上到下的順序依次輸出顯示。
2、 才P4居權(quán)利要求1所述的方法,其特征在于,所述顯示屬性還包括是否 需要整詞折行,所述方法還包括當(dāng)已顯示的數(shù)據(jù)單元的個(gè)數(shù)達(dá)到預(yù)先設(shè)定的豎向顯示閾值時(shí),將待顯示 的需要整詞折行的數(shù)據(jù)單元整體進(jìn)行從左到右或者從右到左的換行處理后, 與其余的待顯示的數(shù)據(jù)單元仍舊按照從上到下的順序依次輸出顯示。
3、 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述分別獲取MARC數(shù) 據(jù)中的數(shù)據(jù)單元包括分別獲取MARC數(shù)據(jù)中的各字段的字段內(nèi)容中的數(shù)據(jù) 單元。
4、 根據(jù)權(quán)利要求3所述的方法,其特征在于,還包括 分別獲取與各字段內(nèi)容對(duì)應(yīng)的字段標(biāo)識(shí)符; 對(duì)各字段標(biāo)識(shí)符進(jìn)行豎向輸出顯示或者橫向輸出顯示。
5、 根據(jù)權(quán)利要求3所述的方法,其特征在于,還包括 分別獲取與各字段內(nèi)容對(duì)應(yīng)的字段指示符; 對(duì)各字段指示符進(jìn)行豎向輸出顯示或者橫向輸出顯示。
6、 才艮據(jù)權(quán)利要求4所述的方法,其特征在于,還包括分別獲取與各字 段標(biāo)識(shí)符對(duì)應(yīng)的字段名稱,并輸出顯示各字段名稱。
7、 根據(jù)權(quán)利要求6所述的方法,其特征在于,所述輸出顯示各字段名稱 包括字段名稱中各數(shù)據(jù)單元按照從上到下的順序依次輸出顯示,根據(jù)數(shù)據(jù)單元的顯示屬性對(duì)需要豎向輸出顯示的數(shù)據(jù)單元進(jìn)行文字垂直旋轉(zhuǎn)后,輸出 顯示,對(duì)不需要豎向輸出顯示的數(shù)據(jù)單元直接輸出顯示。
8、 根據(jù)權(quán)利要求4所述的方法,其特征在于,所述對(duì)各字段標(biāo)識(shí)符進(jìn)行 豎向輸出顯示或者橫向輸出顯示包括按照升序方式或者降序方式,對(duì)各字段標(biāo)識(shí)符進(jìn)行豎向輸出顯示或者橫 向輸出顯示。
9、 根據(jù)權(quán)利要求l所述的方法,其特征在于,所述顯示屬性還包括輸出 方式,所述進(jìn)行文字垂直旋轉(zhuǎn)包括當(dāng)所述輸出方式為從左到右輸出時(shí),對(duì)需要進(jìn)行豎向輸出顯示的處理的 數(shù)據(jù)單元,以所述數(shù)據(jù)單元的詞首為軸沿逆時(shí)針?lè)较蛐D(zhuǎn)270度或沿順時(shí)針 方向旋轉(zhuǎn)-90度;當(dāng)所述輸出方式為從右到左輸出時(shí),對(duì)需要進(jìn)行豎向輸出顯示的處理的 數(shù)據(jù)單元,以所述數(shù)據(jù)單元的詞尾為軸沿順時(shí)針?lè)较蛐D(zhuǎn)270度或沿逆時(shí)針 方向旋轉(zhuǎn)-90度。
10、 根據(jù)權(quán)利要求2所述的方法,其特征在于,所述需要整詞折行的數(shù)據(jù)單元包括以空格為間隔由字母或數(shù)字組成的 數(shù)據(jù)單元,該需要整詞折行的數(shù)據(jù)單元不能斷開顯示。
全文摘要
本發(fā)明公開了一種機(jī)器可讀目錄數(shù)據(jù)顯示方法。該方法包括分別獲取MARC數(shù)據(jù)中的數(shù)據(jù)單元;獲取與所述數(shù)據(jù)單元對(duì)應(yīng)的顯示屬性,所述顯示屬性包括輸出角度;根據(jù)所述輸出角度確定所述數(shù)據(jù)單元是否需要豎向輸出顯示;對(duì)需要豎向輸出顯示的數(shù)據(jù)單元進(jìn)行文字垂直旋轉(zhuǎn)后,輸出顯示;對(duì)不需要豎向輸出顯示的數(shù)據(jù)單元直接輸出顯示;并且各數(shù)據(jù)單元按照從上到下的順序依次輸出顯示。本發(fā)明可以實(shí)現(xiàn)MARC數(shù)據(jù)的豎向顯示,適應(yīng)圖書館自動(dòng)化管理進(jìn)程的發(fā)展。
文檔編號(hào)G06F17/21GK101566939SQ200910085739
公開日2009年10月28日 申請(qǐng)日期2009年5月27日 優(yōu)先權(quán)日2009年5月27日
發(fā)明者岳耀明 申請(qǐng)人:內(nèi)蒙古蒙科立軟件有限責(zé)任公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
通山县| 定远县| 玉环县| 苏尼特右旗| 汪清县| 吴川市| 昌宁县| 大城县| 于都县| 永泰县| 白城市| 松桃| 乳源| 汪清县| 上杭县| 阿坝| 巴彦淖尔市| 保德县| 东兴市| 陵川县| 桐庐县| 永平县| 翁牛特旗| 乃东县| 泰来县| 沂水县| 乐安县| 栖霞市| 云浮市| 天全县| 汾西县| 盖州市| 呼图壁县| 灌阳县| 淅川县| 大田县| 合肥市| 三江| 临江市| 阿拉善左旗| 定安县|