Isonjululwe: umtya kwi-byte uluhlu

Uhlaziyo lokugqibela: 09/11/2023

Utshintsho lweentambo ukuya kwi-byte arrays ngumba osisiseko ukuqondwa kwi C# inkqubo. Ngokuqhelekileyo, abaphuhlisi banikwe umsebenzi wolu guqulelo ngenxa yesidingo sokugcina idatha yombhalo kwi-byte format, ukuvelisa ixabiso le-hash, i-encrypt texts, njalo njalo. Ngoko ke, ukuqonda ubucukubhede bale nkqubo yokuguqula kubalulekile kuye nawuphi na umphuhlisi we-C#.

Umtya kwi-Byte Array Conversion kwi-C#

Kwinkqubo ye-C#, udidi lwe-Encoding ye-System.Isithuba segama sokubhaliweyo sithatha indawo yokuqala xa kuguqulwa okubhaliweyo okumelwe njengolandelelwano lweempawu ze-Unicode (umtya) kwibhloko yee-bytes (byte array) nangokuphendululekileyo.

igalelo lomtya = “Molo Hlabathi!”;
byte[] byteArray = System.Text.Encoding.Default.GetBytes(input);

Umgaqo osemva koguqulelo lwebhayithi yoluhlu kukuba wonke umsebenzi umelwe yi-byte ethile, njengoko ichazwa ludweliso lwekhowudi olusetyenzisiweyo. Kubalulekile ukuba ubenekhowudi echanekileyo yokuthintela ukulahleka kwedatha okanye urhwaphilizo xa uguqula umva uluhlu lwe-byte kumtya.

Ukuqonda iKhowudi yoGuqulo

Inyathelo 1: Siqala ngokuchaza umtya, "Molo hlabathi!" yabelwe ukuguquguquka 'kwigalelo.'

Inyathelo lesi-2: Sebenzisa udidi lweKhowudi kwi-System.Text namespace, apho indlela ye-'GetBytes' isetyenziswa khona. Yile nto etshintsha umtya kwi-byte uluhlu.

Makhe sichaze ngakumbi umsebenzi:

// Chaza umtya
igalelo lomtya = “Molo Hlabathi!”;

//Sebenzisa iSistim.Text.Encoding.Default.GetBytes() ukuguqula umtya kuluhlu lwebyte
byte[] byteArray = System.Text.Encoding.Default.GetBytes(input);

Indlela ethi 'GetBytes' apha, yamkela ixabiso lomtya kwaye emva koko iliguqulele kuluhlu lwebyte njengoko imelwe yi 'byteArray' eguquguqukayo. Isixokelelwano.Umbhalo.Ufakelo lweekhowudi.Olumiselweyo lubonisa inkqubo yokukhowuda esiyisebenzisayo ukwenza lo msebenzi.

Amathala eencwadi afanelekileyo kunye neMisebenzi

Ekuxoxeni ngomtya kwi-byte uluhlu lwenguquko, 'System.Text' isithuba segama sibalulekile. Ngethamsanqa kwi-C#, imitya yi-Unicode. Ke ngoko, ukuguqula phakathi kwe-byte arrays kunye neentambo ngumcimbi wokutolika uluhlu lwe-byte ukusuka kwi-encoding enye (ehlala i-Utf8) kwaye uyiguqulela kumtya usebenzisa i-GetString umsebenzi we-Unicode encoding.

System.Text.Encoding.UTF8.GetString(byteArray);

Imigibe eqhelekileyo kunye neZilumkiso

Omnye umgibe oqhelekileyo kule nkqubo yoguqulelo kukusebenzisa ikhowudi engafanelekanga. Oku kungenxa yokuba abalinganiswa abohlukeneyo banomboniso we-byte owahlukileyo ngokuxhomekeke kudweliso lwekhowudi olusetyenzisiweyo. Yiyo loo nto, ukuba ngexesha loguqulelo, usebenziso lwekhowudi olungalunganga luyasetyenziswa, idatha yoqobo ayinakufunyanwa xa kuguqulwa umva ukusuka kuluhlu lwebyte ukuya kumtya.

Ukuqukumbela, uguqulelo olusuka kumtya ukuya kuluhlu lwebyte ngumsebenzi osisiseko kuphuhliso lweC #. Ihlala ifuneka ekugcineni umbhalo njengedatha ye-byte, ukuvelisa amaxabiso e-hash okanye uguqulelo oluntsonkothileyo lokubhaliweyo. Ukuqonda ukuba lwenziwa njani olu guqulelo ngokuchanekileyo nangokufanelekileyo kuya kukwenza ube ngumphuhlisi onobuchule ngakumbi be-C #.

Izithuba ezihambelanayo: