Gå til innhold

Anbefalte innlegg

Hey!

 

Jeg lager et program som skal sende informasjon over et nettverk som har ekstremt begrenset båndbredde. Informasjonen som sendes er vanligvis ikke strenger over 130 bytes. Jeg håper dog at det er mulig å komprimere disse små strengene i tillegg slik at de tar enda mindre plass. Nettverket jeg sender strengene over sender ikke i byte per sekund, men i bit per sekund...

 

Jeg prøvde nylig å lage en .dll fil ut av en c++ fil som hadde kode for å komprimere små tekst strenger kalt Smaz (google it), men det virker som om koden ikke er helt moden enda da jeg fikk artifacts fra tid til annen.

 

Er det noen som vet hvordan jeg kan få komprimert text-strengene mine? Forslag som Zip, 7Zip osv hjelper lite, da du gjerne må opp i et par hundre bytes før disse komprimerer strengene istedenfor å forstørre dem.

 

Takk for alle innspill! :D

Lenke til kommentar
Videoannonse
Annonse

System.IO.Compression.GZipStream er kanskje et sted å begynne :)

edit: vet ikke hvor mye det hjelper på så lite tekst

 

Dersom du kan begrense karakterbredden, kan du bruke færre bits, for eksempel halvere ettersom de fleste normale bokstaver får fint plass på 7 bit (ASCII) og så kan du bruke det 8-ende bitet til å betegne neste tegn.

Endret av GeirGrusom
Lenke til kommentar

Har sett noe på det, men er ikke så flink i C# at det gjør noe enda. Fokuserer heller på å bli ferdig med resten av programmet før jeg eventuelt prøver meg på noe sånt :) Foreløpig bruker jeg en kode som sjekker teksten etter æøå, og gjør om til ASCII dersom den ikke finner norske bokstaver, det forkorter teksten med rundt 10 bytes, bedre enn ingenting :)

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...