1. Wir haben diesmal 2 Gewinnspiele zeitgleich für euch - Gewinne einmal ein UMI Plus E - Beim 2ten könnt ihr ein Nomu S30 gewinnen!
  1. nithdi, 16.07.2010 #1
    nithdi

    nithdi Threadstarter Neuer Benutzer

    Hi.

    Ich verzweifle gerade an einem eigentlich kleinen Problem - sollte man meinen...

    Ausgangssituation ist folgende:
    Es werden Strings zwischen einem Server, welcher unter Windows läuft, und dem Android App ausgetauscht.
    Der Server ist in Delphi geschrieben und verschickt die Strings mit Unicode Encoding (UTF-16). Als Komponente verwende ich Indy in der Version 10.5.5.
    Gelesen werden sie im Android mit einem InputstreamReader.

    Code:
    Socket listenSocket = new Socket();
    SocketAddress adr = new InetSocketAddress(IPAdress, Integer.parseInt(Port));
    listenSocket.connect(adr,5000);
    BufferedReader in = new BufferedReader(new InputStreamReader(listenSocket.getInputStream(), "UTF-16"));
    
    ...
    
    String input = in.readline();
    
    editfeld.settext(input);
    
    Ich bekomme es aber nicht auf die Reihe, die Strings richtig zu lesen! Entweder werden sie als japanische Zeichen dargestellt, oder das App hängt sich auf (keine Force Close, sondern einfach schwarzer Bildschirm).

    Ich hab schon alle möglichen Charsets ausprobiert.. UTF-16LE, UTF-16BE.

    Hab auch schon das Charset für den Server und App geändert in UTF-8 - auch nix.

    Ich bin absolut am Verzweifeln, weil es einfach nicht funktionieren will.


    Bin für jeden Tipp dankbar!!

    Mfg
     
  2. nithdi, 17.07.2010 #2
    nithdi

    nithdi Threadstarter Neuer Benutzer

    Kommando zurück...
    Das Problem war nur eine Variable im Delphi Server...
     

Diese Seite empfehlen