999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種基于XML的圖像存儲方法

2011-01-01 00:00:00郝偉,韓英
電腦知識與技術 2011年4期

摘要:XML技術廣泛應用于數據庫和在網絡傳輸。但是XML主要適用于文本數據,所以對于圖形數據一般是分開傳輸的,從而改變了傳輸的統一性。該文提出了一種圖像轉換的方法,從而實現了圖像在XML中的傳輸。

關鍵詞:基于XML;圖像傳輸;圖像編碼

中圖分類號:TP311文獻標識碼:A 文章編號:1009-3044(2011)04-0873-02

A Method of Image Storage Based on XML

HAO Wei1, HAN Ying2

(1.Anhui University of Science and Technology, Huainan 232001, China; 2.Yancheng Teachers University, Yancheng 224002, China)

Abstract: XML has been widely used in different areas, such as database and network. XML is just designed for txt files, so the images and binary files are transferred by other mains and the unity of transfer has been changed. This article gives a new way of image transfer based on XML.

Key words: XML-based; image transfer; image coding

XML(Extensible Markup Language)即可擴展標記語言,它與HTML一樣,都是SGML(Standard Generalized Markup Language,標準通用標記語言),即使用標記對內容進行區分。由于Xml是Internet環境中跨平臺的,依賴于內容的技術,是當前處理結構化文檔信息的有力工具。

與同樣是標記語言的HTML相比,XML是專門用來存儲數據的,重在數據本身,而HTML是用來定義數據的,重在數據的顯示模式。

由于XML使用了大量的標記符,所以使用XML會占用更多的空間,但由于XML極其簡單易于掌握和使用,加上現在硬件技術和軟件水平的不斷發揮,所以XML已經廣泛應用于數據庫技術和網絡傳輸中。

1 問題

圖形和圖片在Internet中,是最常見到的文件格式,圖片都是使用二進制進行存儲,所以如果在基于文本的XML文件中傳輸的話,就很可能是破壞XML的內容。如,在二進制數據中,如果正好包含 “<>”這樣的標記,原XML文件的內容就很可能會被破壞,接收端就無法正確的解析XML數據,從而造成數據傳輸的失敗,所以一般圖片都是與文本分開傳輸的。然而數據分開傳輸雖然能解決問題,但是傳輸的統一性就會被破壞,而且存儲也需要在不同的空間完成,對于一些有一定安全性要求的場合就會不太適用。

2 分析

圖形和圖片在Internet中,是最常見到的文件格式,其編碼都是使用二進制進行的,如最基本的Bitmap位圖文件,一般使用RGB三個通道,每個通道表示一種顏色的方式表示一個字節,文件大小為長*寬*3+54,當然網絡傳輸從效率的角度考慮,更多的是經過壓縮的JPG或GIF格式。

但是無論使用哪種格式,最終是二進制的代碼,這樣有很大的不可控性,二制度碼包括了所有的ASCII碼,所以有很大的可能性會出錯,所以如果能對二進制碼進行轉換,將其轉換至某個指定的ASCII碼的空間問題即可解決。

一個字節所能表示的范圍是0-255,而ASCII所常用的空間是數字:48-57,大寫字母:65-90和小寫字母97-122,所以一對一的映射是沒有辦法實現的,因為映射空間不足,即實現映射以后無法還原原數據。

所以在這里使用了2個字節表示一個二進制碼的方式,這樣即可解決問題。

3 算法設計與實現

將圖片文件中的數據的每個字節轉換成可識別的ASCII碼,最常見的方法即可將1個字節二進制數據轉換為2位的16進制碼,0-255對應00-ff,如63對應3f,64對應40,255對應ff。根據此原理編寫代碼,以下代碼均以C#代碼為例。

3.1 編碼:將數據轉換為編碼后的字符串

對每個字節的編碼直接使用ToString(“x”)將其轉換為2位的16進制碼,小于16的只有1位補“0”,湊成2位。

3.2 解碼:將編碼后的字符串轉換為原數據

對字符串進行解碼,每2位還原成1位原數據,每次解碼如果是數字(值在48-57之間),則直接減去48,如果是字母(值在97-122之間)則減去87。然后再將2個值合并,計算公式為:

b = t*16 + t1,其中b為原值,t為解碼后的高位,t1為解碼后低位。

4 應用示例

現在有一張圖片:,其長*寬為16*11,大小為472個字節,將原文件的數據打開保存到一個XML的標記符內后,數據如下所示。

這樣的數據里包括”<”, “>”等非法字符,所以很可能會導致解析失敗,現在將其轉換后,以小寫字母和數字的形式出現,重新編碼后的XML文件如下所示。

這樣經過編碼以后,再使用XML就不會出現任何問題。

5 總結

本方指出了一種方法,將二進制的圖片轉換為可識別的字符串,從而實現了在XML中傳輸圖片。不過本方法也有不足,就是數據的大小會變為原來的2倍,在對傳輸速度要求不高的場合完全可以合適,但是對要求較高的場合會有一定影響,這個問題可以再分析通過一些辦法進一步解決。

參考文獻:

[1] 萊維丁.算法設計與分析基礎[M].北京:清華大學出版社,2007.

[2] 李家同.算法設計與分析導論[M].北京:機械工業出版社,2008.

[3] 呂國英.算法設計與分析[M].2版.北京:清華大學出版社,2009.

主站蜘蛛池模板: 欧美精品在线视频观看| 久久精品66| 国产亚洲精品va在线| 亚洲欧美日韩天堂| 亚洲国产成人综合精品2020| 毛片久久久| 真实国产乱子伦视频| 久久综合九色综合97婷婷| 欧美97色| 日韩国产精品无码一区二区三区| 97色婷婷成人综合在线观看| www.亚洲一区| a天堂视频| 人人艹人人爽| 99在线观看精品视频| 久久天天躁夜夜躁狠狠| 久久99国产精品成人欧美| а∨天堂一区中文字幕| 久久中文字幕2021精品| 精品国产成人国产在线| 亚洲高清中文字幕在线看不卡| 毛片免费高清免费| 免费无码又爽又黄又刺激网站| 国产成人免费手机在线观看视频 | 免费中文字幕在在线不卡| 欧美综合成人| 亚洲精品日产精品乱码不卡| 91久久国产综合精品女同我| 久久国产精品电影| 国产亚洲高清在线精品99| 欧美综合一区二区三区| 天天综合网色中文字幕| 99热这里只有免费国产精品 | 欧美a级完整在线观看| 日韩av在线直播| 久久久波多野结衣av一区二区| 亚洲天堂网2014| 超碰aⅴ人人做人人爽欧美| 国产噜噜噜| 欧美性爱精品一区二区三区| 91视频精品| 直接黄91麻豆网站| 欧美全免费aaaaaa特黄在线| 美女被狂躁www在线观看| 国产午夜福利在线小视频| 亚洲精品中文字幕午夜| 亚洲欧美国产五月天综合| 国产亚洲欧美在线中文bt天堂 | 国产精品久久国产精麻豆99网站| 极品性荡少妇一区二区色欲 | 3344在线观看无码| 国产96在线 | 免费毛片全部不收费的| 996免费视频国产在线播放| 国产玖玖视频| 99热免费在线| 99精品视频九九精品| 二级特黄绝大片免费视频大片| 亚洲色欲色欲www网| 国产极品美女在线| 69av免费视频| 日本国产精品| 欧美一级专区免费大片| 国产欧美又粗又猛又爽老| www.亚洲色图.com| 欧美不卡视频一区发布| 亚洲精品黄| 亚洲国产日韩在线观看| 日韩成人高清无码| 久久精品国产在热久久2019| 日本在线免费网站| 色综合国产| 国产在线精彩视频二区| 九九视频在线免费观看| 免费看a级毛片| 亚洲欧美另类日本| 亚洲天堂视频网| 亚洲天堂免费观看| 日本精品中文字幕在线不卡 | 玖玖精品在线| 精品国产欧美精品v| 在线观看91香蕉国产免费|