ÆØÅ

Tags:    c#

Jeg er ved at udvikle et program hvor jeg skal gå fra tal til tegn, men når jeg prøver at gøre det med æ, ø og å, så får jeg enten en firkant eller et @ alt efter om jeg bruger UTF8 eller ASCII, er der nogen der kan hjælpe mig?
Her er koden hvor jeg skal bruge det:
Fold kodeboks ind/udCSharp kode 




Indlæg senest redigeret d. 03.09.2008 22:29 af Bruger #12914
6 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 7 karma
Sorter efter stemmer Sorter efter dato
Problemet med din kode er at du ikke bare fortsætter igennem alfabetet, men ASCIIs codepage. Efter ø kommer netop @ osv. og ikke å som du ville forvente. Men nu er jeg ikke helt med hvad det er du forsøger at opnå? Noget simpelt kryptering eller sådan noget?



Grunden til, at det ikke virker for dig med unicode eller default er følgende linje:
Fold kodeboks ind/udKode 

Man kan ikke bare pille én byte ud af array'et og forvente, at det kan omformes til specielle karakterer som æøå, da mange karakterer fylder 2 bytes i unicode. Du bliver nødt til at encode/decode hele array'et for at dine bytes bliver læst korrekt (med unicode eller default).





Ja det jeg ønsker at opnå er simpel kryptering, men hvis jeg kryptere å får jeg også bare et @.



Prøv og brug Default istedet for ASCII



Det virker desværre heller ikke med Default encoding i stedet for ASCII. Kan det skyldes at mit tekstfelt bruger en anden encoding?



Grunden til, at det ikke virker for dig med unicode eller default er følgende linje:
Fold kodeboks ind/udKode 

Man kan ikke bare pille én byte ud af array'et og forvente, at det kan omformes til specielle karakterer som æøå, da mange karakterer fylder 2 bytes i unicode. Du bliver nødt til at encode/decode hele array'et for at dine bytes bliver læst korrekt (med unicode eller default).

Har du et eksempel? Er ikke forfærdelig god til C#, men jeg prøver at lære så meget jeg kan.



t