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.

主站蜘蛛池模板: 精品国产Ⅴ无码大片在线观看81| 国产精品久久自在自线观看| 国产在线观看精品| 久草视频精品| 国产真实乱子伦精品视手机观看| 在线人成精品免费视频| 欧美成人午夜在线全部免费| 成人免费午夜视频| 天堂中文在线资源| 亚洲国产看片基地久久1024| 国内精品视频| 国产午夜人做人免费视频| 日本三级欧美三级| 秋霞午夜国产精品成人片| 国产精品自在在线午夜| 国产91视频免费| 影音先锋丝袜制服| 成年人久久黄色网站| 亚洲无码精彩视频在线观看| 国产一级妓女av网站| 亚洲IV视频免费在线光看| 最新日本中文字幕| 欧美激情视频一区| 毛片网站在线看| 色妞www精品视频一级下载| 国产欧美精品专区一区二区| 亚洲精品国产成人7777| 成人福利在线观看| 国产xxxxx免费视频| 99视频国产精品| 幺女国产一级毛片| 国产最新无码专区在线| 国内精品小视频在线| 一级成人a毛片免费播放| 国产区网址| 在线亚洲天堂| 精品人妻AV区| 亚洲中文字幕无码爆乳| 日本色综合网| 国产精品冒白浆免费视频| 91久久大香线蕉| 激情六月丁香婷婷| 久久久久亚洲av成人网人人软件| 欧美一级大片在线观看| 国产精选自拍| 国产免费黄| 精品国产网| 热久久综合这里只有精品电影| 精品国产自在现线看久久| 国产迷奸在线看| 丁香五月激情图片| 国产精品视频免费网站| 婷婷综合色| 天天综合色网| 香蕉视频国产精品人| 亚洲无线一二三四区男男| 亚洲日韩Av中文字幕无码| 国产成人亚洲毛片| 大学生久久香蕉国产线观看| 国产超碰一区二区三区| 欧美爱爱网| 欧美啪啪精品| 91麻豆精品国产91久久久久| 亚洲精品无码不卡在线播放| 亚洲无码不卡网| 亚洲婷婷丁香| 亚洲国产精品日韩欧美一区| 亚洲天堂视频在线观看免费| 超薄丝袜足j国产在线视频| 亚洲成人在线免费| 一本大道AV人久久综合| 2021国产精品自产拍在线观看 | 狠狠色丁香婷婷| 欧洲欧美人成免费全部视频| 亚洲综合天堂网| 成人免费一级片| 成色7777精品在线| 国产成人欧美| 欧美啪啪一区| 99精品热视频这里只有精品7| 亚洲全网成人资源在线观看| 亚洲精品在线影院|