संगणक, प्रोग्रामिंग
UTF-8 - वर्ण एन्कोडिंग
युनिकोड अक्षरशः सर्व विद्यमान अक्षर संच समर्थन पुरवतो. युनिकोड वर्ण संच एन्कोड सर्वोत्तम फॉर्म UTF-8 एन्कोडिंग आहे. तो डेटा, कार्यक्षमता आणि प्रक्रिया सोयीस्कर बनवण्यासाठी कुरूपता करण्यासाठी ASCII सुसंगतता, प्रतिकार समर्थन पुरवते. प्रथम पण पहिल्या गोष्टी.
कोडींग फॉर्म
बाइट व 32-बिट शब्द - संगणक केवळ संख्या गोषवारा गणितीय वस्तूंचे, तसेच स्टोरेज युनिट जोड्या आणि हाताळणी निश्चित आकार डेटा येथपासून चालवतात. ठरवताना कसे सादर एन्कोडिंग मानक खात्यात या घेणे आवश्यक आहे वर्ण संख्या.
संगणक प्रणाली मध्ये, 8 बिट (1 बाइट नाही), 16 किंवा 32 बिट स्मृती पेशी मध्ये संग्रहित पूर्णांक. प्रत्येक फॉर्म युनिकोड एन्कोडिंग, मेमरी पेशी क्रम एका विशिष्ट प्रतीक संबंधित एक पूर्णांक आहे करते. मानक मध्ये युनिकोड वर्ण 8, 16 व 32-बिट अवरोध कोडींग तीन विभिन्न प्रकार आहेत. त्यानुसार, ते UTF-8, UTF-16 आणि UTF-32 म्हणून ओळखले जातात. नाव UTF साठी युनिकोड परिवर्तन स्वरूप आहे. एन्कोड अर्थ तीन फॉर्म प्रत्येक आहे समान प्रतिनिधित्त्व युनिकोड वर्ण विविध अनुप्रयोग मध्ये फायदे आहेत.
डेटा एनक्रिप्शन युनिकोड मानक सर्व वर्ण प्रतिनिधित्व करण्यासाठी वापरले जाऊ शकते. त्यामुळे, ते विविध कारणांसाठी उपाय पूर्णपणे सुसंगत आहेत कोडींग विविध फॉर्म वापरून. प्रत्येक कोडींग unambiguously डाटा नष्ट न करता इतर दोन कोणत्याही मध्ये रूपांतरीत केले जाऊ शकते.
nenalozheniya तत्त्व
फॉर्म युनिकोड एन्कोडिंग प्रत्येक नॉन आंशिक आच्छादन दृश्य विकसित. उदाहरणार्थ, विंडोज 932 कोड एक किंवा दोन बाइट वर्ण अर्ज. क्रम लांबी प्रथम बाइट अवलंबून असते, त्यामुळे दोन-बाइट आणि सिंगल बाइट disjoint मालिका अग्रगण्य बाइट मूल्ये. तथापि, एक सिंगल बाइट मूल्य आणि शेवटी बाइट क्रम एकाचवेळी शकते. या उदाहरणार्थ याचा अर्थ वर्ण शोध डी (कोड 44) तो चुकून दोन-बाइट अक्षर "डी" क्रम दुसऱ्या भागात प्रवेश शोधू शकता (कोड 84 44). जे क्रम योग्य आहे शोधण्यासाठी, कार्यक्रम मागील बाइट खात्यात घेणे आवश्यक आहे.
परिस्थिती, क्लिष्ट आहे अग्रस्थानी आणि शेवटी बाइट सामना तर. या संदिग्धता दूर करण्यासाठी मजकूर किंवा अद्वितीय कोड क्रम सुरुवात पोहोचत आधी तिरकी पाहण्याच्या असेल याचा अर्थ असा की. हे केवळ अकार्यक्षम आहे, पण शक्य चुका पासून संरक्षित नाहीत पूर्ण मजकूर फक्त एक चूक बाइट अवाचनीय झाले आहे पासून आहे.
रूपांतरण स्वरूप युनिकोड ही समस्या निर्माण होत नाही कारण अग्रगण्य, शेवटी मूल्य, आणि संचय एकच युनिट तीच माहिती नाही. या शोध आणि तुलना, कधीही योग्य वर्ण कोड विविध भागांमध्ये च्या योगायोग करण्यासाठी चुकीचा परिणाम देत त्या सर्व युनिकोड मिळण्याची हमी. कोडींग या फॉर्म तत्त्व nenalozheniya देखणे की, इतर पूर्व आशियाई मल्टी-बाइट एन्कोडिंग त्यांना वेगळे.
nonintersection आणखी एक पैलू युनिकोड एन्कोडिंग प्रत्येक अक्षर एक स्पष्टपणे परिभाषित सीमा आहे. गेल्या प्रतीक बेमुदत संख्या स्कॅन गरज नसते. हे वैशिष्ट्य कधी कधी स्वत: ची झाली एन्कोडिंग म्हणतात. कोड युनिट विरूपण फक्त एक अक्षर एक कुरूपता करेल, आणि आसपासच्या वर्ण शिल्लक आहेत. 8-बिट स्वरूप रूपांतरण मध्ये, बाइट (बायनरी कोड) 10xxxxxx सह सुरू करण्यासाठी पॉईंटर गुणांचे चिन्ह सुरू एक ते तीन उलट संक्रमणे आवश्यक आहे शोधण्यासाठी तर.
सुसंगतता
युनिकोड बोली पूर्णपणे 3 एन्कोडिंग फॉर्म समर्थन पुरवतो. युनिकोड वर्ण-एन्कोडिंग मानक मूर्त स्वरूप सारखेच वैध फॉर्म - ही UTF-8 आणि युनिकोड, सर्व रूपांतरण स्वरूप म्हणून विरोध न महत्वाचे आहे.
बाइट-आवड
UTF-32 अक्षरे प्रतिनिधित्व करण्यासाठी एक 32-बिट कोड युनिट, युनिकोड कोड हा योगायोगच आहे, जे आवश्यक आहे. UTF-16 - दोन 16-बिट युनिट एक. एक UTF-8 4 बाइटपर्यंत वापरते.
UTF-8 एन्कोडिंग बाइट-देणारं ASCII आधारित प्रणाली सुसंगत होण्यासाठी डिझाइन केले आहे. एक वेळ विद्यमान सॉफ्टवेअर आणि माहिती तंत्रज्ञान सराव बहुतेक बाइट एक क्रम वर्ण प्रतिनिधित्व प्रयत्न. अनेक प्रोटोकॉल सातत्य अवलंबून ASCII एन्कोडिंग करते आणि वापरते एकतर विशेष वर्ण नियंत्रण निर्माण होत नाही. , परिस्थिती युनिकोड करू शकता करण्यासाठी परिस्थितीशी जुळवून एक सोपा मार्ग युनिकोड वर्ण, कोणत्याही समतुल्य ASCII वर्ण किंवा नियंत्रण वर्ण प्रतिनिधीत्व करण्यासाठी 8-बिट कोडींग वापरून. या शेवटी, आणि तो UTF-8 एन्कोडिंग आहे.
चल लांबी
UTF-8 - चल लांबी कोडींग 8-बिट स्टोरेज युनिट असून, वरच्या बिट जे मालकीचे प्रत्येक बाइट क्रम कोणत्याही भाग दर्शवतात. कोड क्रम पहिल्या घटक वाटप करण्यात आलेल्या एक मूल्य श्रेणी, दुसरा - पुढील. या disjointness एन्कोडिंग उपलब्ध आहे.
ASCII
UTF-8 एन्कोडिंग पूर्णतया समर्थीत आहे ASCII कोड (0x00-0x7F). या युनिकोड वर्ण U + 0000-U + 007F सिंगल बाइट 0x00-0x7F UTF-8 मध्ये रूपांतर आणि अशा प्रकारे ASCII पासून वेगळा करता न येण्यासारखा झाले आहेत याचा अर्थ असा की. शिवाय, संदिग्धता टाळण्यासाठी, मूल्य आणखी युनिकोड वर्ण एकच बाइट प्रतिनिधित्व वापरले नाही 0x00-0x7F. , आस्की पेक्षा प्रतीक इतर neideograficheskih दोन बाइट एक क्रम वापरून एन्कोड करण्यासाठी. प्रतीक श्रेणीत U + 0800-U + ffff तीन बाइट प्रस्तुत केल्या आहेत, आणि U + ffff पेक्षा जास्त अतिरिक्त कोड चार बाइट आवश्यक आहे.
अर्ज क्षेत्र
UTF-8 एन्कोडिंग सहसा HTML प्रोटोकॉल प्राधान्य दिले जाते, आणि जसे.
एक्स एम एल साठी UTF-8 एन्कोडिंग पूर्ण समर्थन प्रथम मानक बनले आहे. मानक संस्था देखील शिफारस. ASCII-वर्ण वेगळे आहे URL पत्ता समर्थन समस्या, कोचीमध्ये W3C आणि IETF अभियांत्रिकी गट सर्व कोडींग करार आले, तेव्हा निराकरण झाले URL पत्ते केवळ UTF-8 मध्ये.
ASCII सुसंगतता नवीन सॉफ्टवेअर संक्रमण सुलभ होते. UTF-8 सर्वात मजकूर संपादक आहेत, JEdit, emacs, BBEdit, एक्लिप्स, आणि "Notepad," Windows कार्य प्रणाली समावेश कार्य करते आहे. एन्कोडिंग युनिकोड अन्य कोणत्याही स्वरूपात साधन अशा समर्थन बढाई मारणे शकता नाही.
फायदा कोडींग तो बाइट एक क्रम समावेश आहे. ही UTF-8 स्ट्रिंग, C व इतर प्रोग्रामिंग भाषांमधील काम सोपे आहे. हा एन्कोडिंग फक्त फॉर्म आहे, ऑर्डर लेबले आवश्यकता नाही BOM किंवा XML मध्ये एन्कोडिंग घोषणा बाइट.
स्वत: ची समक्रमण
वातावरण इतर मल्टी-बाइट अक्षर संच तुलनेत प्रक्रिया 8-बीट प्रतीक चा वापर, जे UTF-8 फायदे पुढीलप्रमाणे आहेत:
- प्रथम बाइट कोड क्रम त्याची लांबी माहिती समाविष्टीत आहे. थेट शोध कार्यक्षमता वाढते.
- सुरू बाइट मूल्ये निश्चित श्रेणी मर्यादित आहे म्हणून प्रतीक सुरूवातीस शोधत सरलीकृत.
- कोणतेही छेदनबिंदू बाइट मूल्ये.
फायदे तुलना करा
UTF-8 एन्कोडिंग संक्षिप्त आहे. पण पूर्व आशियाई वर्ण एन्कोड करण्यासाठी वापरले जात असताना (चीनी, जपानी, कोरियन, चिन्हे वापरून चीनी लेखन) वापरले 3-बाइट क्रम. तसेच UTF-8 एन्कोडिंग प्रक्रिया गती कोडींग इतर फॉर्म कनिष्ठ आहे. एक बायनरी वर्गीकरण ओळी बायनरी युनिकोड वर्गीकरण समान परिणाम निर्मिती.
वर्ण एन्कोडिंग योजना
वर्ण एन्कोडिंग योजना यांचा समावेश आहे एन्कोडिंग प्रतीक फॉर्म आणि सिंगल बाइट स्थान कोड एकके पद्धत. एन्कोडिंग योजना युनिकोड मानक इनीशीअल बाइट आदेश चिन्ह (BOM, बाइट आदेश चिन्ह) वापर उपलब्ध निश्चित करण्यासाठी.
UTF-8 वैशिष्ट्य टॅग BOM कोडींग फॉर्म वापर फक्त संदर्भ मर्यादित आहे तेव्हा. तिचे एन्कोडिंग युनिट आकार एक बाइट आहे म्हणून endian UTF-8 ठरवण्यासाठी समस्या आहेत. कोडींग हा फॉर्म साठी BOM वापरणे आवश्यक किंवा शिफारस नाही आहे. BOM साठी UTF-8 एन्कोडिंग बाइट करण्यासाठी चिन्ह किंवा स्वाक्षरी वापरून इतर codings रुपांतरित मजकूर उद्भवू शकते. 3 बाइट EF ब्रॅन्डन 16 16 BF 16 क्रम आहे.
UTF-8 एन्कोडिंग कसे सेट
HTML कोडींग UTF-8 खालील कोड सह प्रतिष्ठापीत केले आहे:
डोके
मेटा http-equiv = "सामग्री-प्रकार" सामग्री = "text / html; अक्षरसंच = UTF-8" ˃
PHP मध्ये UTF-8 एन्कोडिंग सेटिंग आउटपुट स्तर मूल्य त्रुटी नंतर शीर्षलेख () फाइल सुरूवातीला फंक्शन वापरून सेट आहे:
˂? Php
error_reporting (-1);
शीर्षलेख ( "सामग्री-प्रकार: मजकूर / html; अक्षरसंच = UTF-8);
एक, MySQL डेटाबेस UTF-8 एन्कोडिंग सेट आहे कनेक्ट करा:
˂? Php
mysql_set_charset ( 'UTF8');
CSS-फाइल एन्कोडिंग UTF-8 वर्ण खालीलप्रमाणे निर्दिष्ट आहे:
@charset "UTF-8";
आपण सर्व प्रकारच्या फायली निवडा BOM न UTF-8 एन्कोडिंग, जतन करता तेव्हा अन्यथा साइटवर कार्य करणार नाही. UTF-8 एन्कोडिंग बदलण्यासाठी DreamWeave हे मेन्यू घटक "शीर्षक / एन्कोडिंग - - पृष्ठ गुणधर्म सुधारणा" निवडणे आवश्यक आहे. पृष्ठ रीलोड करून त्यानंतर, पासून "कनेक्ट युनिकोड स्वाक्षरी (BOM)» चेक मार्क काढा आणि बदल लागू. एक पृष्ठ वर किंवा डेटाबेस मध्ये कोणताही मजकूर कोडींग दुसर्या फॉर्म सुरू करण्यात आली, तर तो पुन्हा-प्रविष्ट करा किंवा पुन्हा साध्या भाषेतील करणे आवश्यक आहे. आपण नियमित अभिव्यक्ती सह कार्य करतेवेळी, सुधारक नाम वापर याची खात्री करा.
आपण Windows च्या "Notepad," मध्ये UTF-8 एन्कोडिंग मध्ये फाईल सेव्ह करू शकता. मेनू आयटम निवडून केल्यानंतर, "फाइल - म्हणून जतन करा ..." एन्कोडिंग आवश्यक फॉर्म स्थापित आणि UTF-8 मध्ये फाइल जतन करण्यासाठी.
, जे UTF-8 पेक्षा इतर सेट केल्यास मेन्यू घटक द्वारे मजकूर संपादक Notepad, ++, मध्ये "» BOM न UTF-8 रूपांतरित वर्ण बदला आणि UTF-8 मध्ये जतन करा.
पर्याय नाही
राजकीय आणि भाषिक सीमा नष्ट आहेत जेथे जागतिकीकरणाचा संदर्भात, स्थानिक वैशिष्ट्ये आहेत की अक्षर संच, थोडे वापर आहेत. युनिकोड सर्व स्थानीयकरणांमध्ये समर्थन एकल वर्ण आहे. एक UTF-8 - युनिकोड योग्य अंमलबजावणी, आहे एक उदाहरण:
- हे साधने, आस्की एन्कोडिंग सुसंगतता समावेश विस्तृत समर्थन;
- हे कुरूपता डेटा प्रतिरोधक आहे;
- सोपे आणि उपचार प्रभावी
- प्लॅटफॉर्म स्वतंत्र आहे.
UTF-8 वादविवाद एन्कोडिंग किंवा वर्ण संच काय स्वरूपात बद्दल चांगले आहे घटने किंवा प्रसंगाचे आगमन सह, निरर्थक होते.
Similar articles
Trending Now