
Ukushintshwa kweyunithi yezinhlamvu ukuya kumalungu afanayo ebhayithi kuyisici esibalulekile okufanele siqondwe kuhlelo lwe-C#. Ngokuvamile, abathuthukisi banikezwa umsebenzi walokhu kuguqulwa ngenxa yesidingo sokugcina idatha yombhalo ngefomethi ye-byte, ukukhiqiza amanani we-hashi, ukubethela imibhalo, njalonjalo. Ngakho-ke, ukuqonda ubunkimbinkimbi bale nqubo yokuguqula kubalulekile kunoma yimuphi umthuthukisi we-C#.
I-String to Byte Array Conversion ku-C#
Kuhlelo lwe-C#, ikilasi Lokubhala Ikhodi leSistimu.Indawo yamagama yombhalo iza kuqala lapho kuguqulwa umbhalo omelwe ukulandelana kwezinhlamvu ze-Unicode (iyunithi yezinhlamvu) ube ibhulokhi yamabhayithi (amabhayithi afanayo) futhi ngokuphambene nalokho.
string input = “Sawubona Mhlaba!”;
byte[] byteArray = System.Text.Encoding.Default.GetBytes(input);
Umgomo ongemuva kokuguqulwa kweyunithi yezinhlamvu zebhayithi ukuthi zonke izinhlamvu zimelelwa amabhayithi athile, njengoba kuchazwe ngohlelo lombhalo wekhodi olusetshenzisiwe. Kubalulekile ukuthi ube nombhalo wekhodi olungile ukuze uvimbele ukulahleka kwedatha noma ukonakala lapho ubuyisela uchungechunge lwebhayithi kuyunithi yezinhlamvu.
Ukuqonda Ikhodi Yokuguqulwa
Isinyathelo 1: Siqala ngokuchaza iyunithi yezinhlamvu, "Sawubona mhlaba!" kwabelwe okuguquguqukayo 'kokufaka.'
Isinyathelo sesi-2: Sebenzisa ikilasi Lokubhala Ngekhodi Ku-System.Text namespace, lapho kusetshenziswa indlela ye-'GetBytes'. Yilokhu okushintsha iyunithi yezinhlamvu ibe amalungu afanayo ebhayithi.
Masiphinde sihlukanise ukusebenza:
// Chaza umucu
string input = “Sawubona Mhlaba!”;
//Sebenzisa i-System.Text.Encoding.Default.GetBytes() ukuze uguqule iyunithi yezinhlamvu ibe uchungechunge lwebhayithi
byte[] byteArray = System.Text.Encoding.Default.GetBytes(input);
Indlela ethi 'GetBytes' lapha, yamukela inani leyunithi yezinhlamvu bese iyiguqulela ku-byte array njengoba imelelwe ukuhluka kwe-'byteArray'. Isistimu.Umbhalo.Ufaka Ikhodi.Okuzenzakalelayo kusho uhlelo lombhalo wekhodi esilusebenzisayo ukwenza lo msebenzi.
Imitapo yolwazi Nemisebenzi Efanele
Ekuxoxeni ngeyunithi yezinhlamvu kubhayithi yokuguqulwa kwamalungu afanayo, indawo yegama ethi 'System.Text' ibalulekile. Ngenhlanhla ku-C#, amayunithi ezinhlamvu ayi-Unicode. Ngakho-ke, ukuguqula phakathi kwe-byte yamalungu afanayo neyunithi yezinhlamvu kuyindaba yokuhumusha uhlu lwebhayithi lusuka ekubhalweni kwekhodi okukodwa (ngokuvamile i-Utf8) nokuyiguqulela kuyunithi yezinhlamvu usebenzisa umsebenzi we-GetString wombhalo wekhodi we-Unicode.
System.Text.Encoding.UTF8.GetString(byteArray);
Izingibe Ezivamile Nezinyathelo Zokuqapha
Ingozi eyodwa evamile kule nqubo yokuguqulwa ukusebenzisa umbhalo wekhodi ongafanele. Lokhu kungenxa yokuthi izinhlamvu ezihlukahlukene zinezifanekiso zebhayithi ezihlukene kuye ngohlelo lombhalo wekhodi olusetshenzisiwe. Ngakho-ke, uma ngesikhathi sokuguqulwa, kusetshenziswa ukubhala ngekhodi okungalungile, idatha yoqobo ingase ingatholakali lapho iguqulwa isuka kuhlu lwebhayithi ukuya kuyunithi yezinhlamvu.
Sengiphetha, ukuguqulwa ukusuka kuyunithi yezinhlamvu ukuya kuhlelo lwebhayithi kuwumsebenzi obalulekile ekuthuthukisweni kwe-C#. Ngokuvamile kuyadingeka ukuze kugcinwe umbhalo njengedatha ye-byte, ukukhiqiza amanani we-hashi noma ukubethela kombhalo. Ukuqonda ukuthi kwenziwa kanjani lokhu kuguqulwa ngendlela efanele nangempumelelo kuzokukwenza ube unjiniyela we-C# owazi kangcono.