![]() |
TCP/IP Socket xml
Hallo,
möchte über tcp/ip ein Telegramm versenden, siehe Beispiel für Java. Wie könnte das für Delphi aussehen?
Code:
public class ServerTest {
public static void main(String[] args) throws Exception { StringBuffer buf = new StringBuffer(); buf.append("<event>\n");// Start-Tag buf.append(String.format("<address>%s</address>\n", "123test"));// Code buf.append(String.format("<message>%s</message>\n", "Hello World"));// Text buf.append("</event>");// End-Tag try { Socket socket = new Socket("localhost", 5555);// 5555 = Default-Port OutputStream os = socket.getOutputStream(); BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(os, "UTF-8")); bw.write(buf.toString()); bw.flush(); bw.close(); os.close(); } catch (Exception e) { e.printStackTrace(); } } } |
AW: TCP/IP Socket xml
Es wäre sehr freundlich, wenn du den Code auch in die CODE-Tags packen könntest, dann bleiben auch die Formatierungen/Einrückungen erhalten.
|
AW: TCP/IP Socket xml
Vielleicht so in diese Richtung!
Wer hat noch eine bessere Idee?
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var request, nl, content : string; i : integer; begin content := 'address=1234567&message=hallo'; if IdTCPClient1.Connected then IdTCPClient1.Disconnect; IdTCPClient1.Connect; nl := AnsiChar(#13) + AnsiChar(#10); request := 'POST /telegramin/alarmgeber/index.xml HTTP/1.1' + nl + 'Content-Type: application/x-www-form-urlencoded' + nl + 'Host: localhost' + nl + 'Content-Length: ' + IntToStr(length(content)) + nl + 'Expect: 100-continue' + nl + 'Connection: Keep-Alive'+ nl + nl + content; IdTCPClient1.IOHandler.WriteLn(request); for I := 1 to 20 do Memo1.Lines.Add(IdTCPClient1.IOHandler.ReadLn); IdTCPClient1.Disconnect; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:32 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz