Bardzo dziwne działanie (BinaryReader + Writer + własna klasa)

0

Witam. Do mojego komunikatorsa napisałem klasę zarządzającą kontami użyszkodników. Robię sobię testy i na sztywno
writer.Write("admin"); writer.Write("test123"); działa - na serwerze metoda sprawdzająca czy passy są dobre zwraca true. To już dałem potem obsługę kont do klienta, która pobiera z pliku login i hasło, wysyłam sobie tak samo:
writer.Write(client.Login); writer.Write(client.Password); moim oczom ukazuje się własny log: Client rejected. WTF? Patrzę w debuggerze - wszystko ok, zmienne tak jak być powinne, login = "admin", password = "test123" - dupsko, wysyła, ale metoda sprawdzająca na serwie zwraca false, pomimo, że stringi identyczne jak być powinny. Sprawdziłem czy czegoś innego nie sknociłem i dałem jeszcze raz na sztywno - działa. O co tu może chodzić? Z pliku czytam StreamReader'em.

0

To sprawdź debuggerem na serwerze czy jest wszystko w porządku wysyłając dane z klienta.

0

Właśnie sprawdzę, bo na razie mam klient na serwerze, bo jeszcze nie robiłem oddzielnego klienta. Zaraz zobaczymy czy będzie tak samo..

UPDATE
No zaraz ochujeje xD

user image
Nie znam się dogłębnie na działaniu Write'a ani Receive'a, ale czym ten string może się różnić od tego co wpiszę na sztywno oprócz tego, że się niczym nie różni? :D
Tzn. Ten Receive jest mój, ale w nim nie ma nic innego jak BinaryWriter.ReadString(), gdzie strumień to strumień TcpClient'a. A Write'a też używam Binary'ego.

0

jak porównujesz stringi w metodzie check? za pomocą equals(...)?

0

Niet, za pomocą ==, a jest jakaś różnica?

0

Nie znam się, ale czy w Javie stringi nie są obiektami?
Może to robi jakąś różnicę, że trzeba używać .equals...

0

Tak jak Demonical + w C# string'i też są jakby obiektami czyż nie?

0
xeo545x39 napisał(a)

Tak jak Demonical + w C# string'i też są jakby obiektami czyż nie?

Są (prawie normalnymi) obiektami, ale Twórcy C# w przeciwieństwie do twórców Javy wiedzą, że jeśli ktoś pisze intuicyjne "abc" == "abc", to chce porównać zawartość, a nie położenie w pamięci.

1 użytkowników online, w tym zalogowanych: 0, gości: 1