Witam,
Mam następujący problem. Dwie aplikacje rozmawiają ze sobą :-) ale nie mogą się za bardzo dogadać.
Klient -> Serwera
Serwer Odbiera Wszystko bardzo ładnie i wyświetla bez zniekształceń.
Serwer -> Klienta
- I tu się zaczynają schody bo w miejscu ĄŻŹĆÓĘŁŚŃ są krzaki konkretnie jeden krzak (taki czarny rąb ze znakiem zapytania).
Moje pytanie jest takie co i jak mogę poprawić, żeby się ta komunikacja ładnie kończyła?
Próbowałem już zmiany sytem.text.encoding. na różne dostępne kodowania włącznie z Default i UNICODE w pierwszym przypadku dostaję krzaczory totalne w miejscu polskich znaków, w drugim odczyt w ogóle chyba się poprawnie nie wykonuje, bo tekstu ni ma, czyta znaki jako puste.
Związany Kod
W jednym domku Klient C#
Wysyłanie do Serwera Javy
byte[] DaneBinarne = System.Text.Encoding.UTF8.GetBytes(Tekst + "\n");
if (Gniazdo != null)
{
Gniazdo.Send(DaneBinarne);
}
Odczyt z Serwera Javy
char[] Znaki = new char[ile + 1];
System.Text.Decoder d = System.Text.Encoding.UTF8.GetDecoder();
int dlugoscZnaku = d.GetChars(IDGniazda.buforDanych, 0, ile, Znaki, 0);
String S = new String(Znaki);
DopiszDoRTB(richTextBox1, S);
W drugim domku Serwer Javy
Wysyłanie do Klienta C#
this.Wyjscie.format(Tekst, "UTF8");
Odczyt od Klienta C#
Tekst = Wejscie.readLine();