std.bytes
std.bytes jobber med rå bytedata — en buffer av tall mellom 0 og 255, byggeklossen for alt som ikke er tekst: bildefiler, nettverksdata og binært innhold.
std.bytes jobber med rå bytedata: en buffer av tall mellom 0 og 255. Det er byggeklossen for alt som ikke er tekst — bildefiler, data over nettet, og innholdet kryptografi opererer på.
Modulen bygger bro mellom en liste med byte-verdier og en buffer, lar deg lese størrelse og innhold, og tolke bytes som tekst når det gir mening. Trenger du å håndtere binært innhold trygt, er dette laget du bygger på.
Når bruker du den
Bruk std.bytes når du håndterer noe som ikke er tekst: lese en bildefil, ta imot rå data over nettet, eller sette sammen bytes fra en liste. fra_liste og til_liste bygger bro mellom en byte-liste og en buffer.
Slik kommer du i gang
bruk std.bytes som bytes
funksjon start() -> heiltall {
la buffer = bytes.fra_liste([72, 101, 105]) // H, e, i
skriv(bytes.til_tekst(buffer)) // "Hei"
skriv(tekst(bytes.storleik(buffer))) // "3"
returner 0
}En buffer bygges fra en liste med tallverdier (0–255). til_tekst tolker dem som tekst, og storleik gir antall bytes.
Funksjonene
Modulen har byggere (ny, tom, fra_liste), lesere (til_liste, til_tekst, utsnitt_til_tekst, storleik) og en sjekk (er_bytes).
ny(storleik: heiltall, fyll: heiltall)— Lager en buffer av gitt størrelse, fylt med en startverdi.tom()— Lager en tom buffer.fra_liste(verdiar: liste_heltall)— Lager en buffer fra enliste_heltallmed byte-verdier.til_liste(buffer) -> liste_heltall— Gjør en buffer om til enliste_heltall.utsnitt_til_tekst(buffer, start: heiltall, tal: heiltall) -> tekst— Tolker en del av bufferen (frastart,talbyte) som tekst.til_tekst(buffer) -> tekst— Tolker hele bufferen som tekst.er_bytes(verdi) -> boolsk— Sann hvis verdien er en byte-buffer.storleik(buffer) -> heiltall— Antall byte i bufferen.produksjonsstatus() -> ordbok_tekst— Intern statusinformasjon om byte-modulen.
Godt å vite
- Verdiene i en buffer er tall mellom 0 og 255; går du utenfor, er det en feil i dataene, ikke noe modulen retter opp.
til_tekstforutsetter at bytene faktisk er tekst (UTF-8); rå binærdata bør du ikke tolke som tekst.- Bruk
er_bytesnår du er usikker på om en verdi er en buffer før du behandler den.
std.bytes er én av modulene i standardbiblioteket. Alt følger med kjøretiden — ingen installasjon, ingen eksterne avhengigheter. Se også Dokumentasjon for språket og kjøretiden.
Les også
- std.tekststd.tekst er verktøykassen for tekst: søke og sjekke, dele og sette sammen, trimme blanktegn, endre mellom store og små bokstaver, og konvertere til og fra tall.
- std.jsonstd.json lar programmet ditt snakke JSON: parse gjør en JSON-tekst om til en ordbok du kan hente verdier fra trygt, og stringify går den andre veien.
- std.filstd.fil er det enkleste laget mellom programmet ditt og filsystemet: sjekk om en fil finnes, les og skriv tekst, eller les og skriv rå bytes — med disk-kapabilitet.