Avatar billede bjering Nybegynder
16. december 2005 - 14:22 Der er 2 kommentarer og
1 løsning

Kopiere en pakke over nettet med 2xstring,1xip ind i buffer

Hejsa.

jeg har en pakke som ser sådan her ud :

size|opcode|string|null|string|null|ip(4byte)

skal have den kopieret ind i en buffer, som ser sådan her ud..

    private String _user;
    private String _password;

(glemmer lige ipen for nu, den er ikke vigtig).

har denne kode, som failer self...

    public RequestAuthLogin(byte[] rawPacket)
    {       
        _user = new String(rawPacket, 1, 12 ).trim();
        _password = new String(rawPacket, 1 + _user.length() + 1, 12).trim();
    }

er der ikke en måde man kan få den til at kopirere alt teksten fra string(username) -> ind i username, og så det samme med password uden at kende den egentlige længde ?

min metode giver en exception, da den skriver bufferen er større ind pakken eller ligende.
Avatar billede rbj_fp Nybegynder
16. december 2005 - 14:42 #1
Typisk vil man vælge at lave en simple delimiter sekvens af chars, som bruges til at sepere dataene med
Avatar billede bjering Nybegynder
16. december 2005 - 17:04 #2
men den går altså sådan her:

[2 byte] [1 byte] [xx bytes] [0x00] [xx bytes] [00] [4 bytes]

size, opcode, username, null, password, null, ip

de 2 bytes der er size er IKKE i rawPacket, så spring dem over.
Avatar billede bjering Nybegynder
17. december 2005 - 02:34 #3
har selv ordnet det
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester