🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: alt.pl.comp.lang.csharp
2 messages
2 total messages Started by Przemyslaw Augustyn Fri, 12 Mar 2004 15:31
konwersja typów
#581
Author: Przemyslaw Augustyn
Date: Fri, 12 Mar 2004 15:31
29 lines
1929 bytes
    Witam

Mam problem z konwersja typ�w, potrzebuje tablicy bajt�w zawierajacej kody
znakow
(1 bajt na znak) w standardzie latin2, jezeli wprowadze je recznie w taki
sposob

string
napis=((char)0xa4).ToString()+((char)0xa5).ToString()+((char)0x8f).ToString(
)+((char)0x86).ToString();

a nastepnie uzyje dla kazdego pola tablicy stringow konwersji
Convert.ToByte()
bajty beda mialy poprawne wartosci.

jezeli wpisze
string napis = "����濱������"
i znak po znaku skonwertuje do bajtow, to w miejscach gdzie wystepuja
polskie znaki dostane buffer overflow (unicodowe dwa bajty usiluja sie
zmiescic na jednym bajcie :>)

czy wie ktos w jaki sposob uzyskac wynik o jaki mi chodzi?
jakiej metody konwersji uzyc i z jakiej przestrzeni nazw?

Bede wdzieczny za wszelkie podpowiedzi, wlasnie spedzam nad tym 4ta godzine
i mam juz szczerze dosyc ;)
pozdrawiam

Przemys�aw Augustyn
Re: konwersja typów
#582
Author: Robert Winkler
Date: Fri, 12 Mar 2004 19:33
12 lines
1274 bytes
Dlaczego nie zastosujesz poprostu klasy System.Text.Encoding
Na przyk�ad w taki spos�b:

using System.Text;
Encoding mEncoder = Encoding.GetEncoding("Latin2");
string napis = "����濱������";
byte[] tablica;
tablica = mEncoder.GetBytes(napis);

-- 
____________
Robert Winkler
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads