Delphi Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
델파이 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
FreePascal/Lazarus
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
델마당
볼랜드포럼 광고 모집

델파이 Q&A
Delphi Programming Q&A
[15430] Re:자바(서버) 델파이(클라이언트) 간 문자열 주고 받는 프로그램을 작성중에 있습니다.
정영훈 [] 2392 읽음    2015-03-12 16:16
dos.writeChars("abcde");
대신에
bw.write("abcde");
bw.newLine();
bw.flush();
이렇게 해서 테스트해보세요.
김동진 님이 쓰신 글 :
: 자바(서버) 델파이(클라이언트) 간 문자열 주고 받는 프로그램을 작성중에 있습니다.
: IdtTCPClient를 활용하여, IdTCPClient1.WriteLn('Hello'); 를 서버측에 보내게 되면
: 문자열이 서버측(자바) 콘솔에 제대로 받았다고 표시가 되는데, 서버측에서 아무리
: 문자열을 전송해도 클라이언트가 제대로 문자열을 받고있지 못합니다.
:
: ===========================Client 측 코드 =============================
: unit Unit1;
:
: interface
:
: uses
:   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
:   Dialogs, StdCtrls, Sockets, ScktComp, DB, DBClient, IdBaseComponent,
:   IdComponent, IdIOHandler, IdIOHandlerStream, IdIOHandlerSocket,
:   CustomizeDlg, IdTCPConnection, IdTCPClient;
:
: type
:     TForm1 = class(TForm)
:     Edit1: TEdit;
:     Button1: TButton;
:     ClientSocket1: TClientSocket;
:     CustomizeDlg1: TCustomizeDlg;
:     IdTCPClient1: TIdTCPClient;
:     Edit2: TEdit;
:     Edit3: TEdit;
:     ServerSocket1: TServerSocket;
:
:     procedure Button1Click(Sender: TObject);
:   private
:     { Private declarations }
:   public
:     { Public declarations }
:   end;
:
: var
:   Form1: TForm1;
:   str: AnsiString;
:   ch: Char;
:   Stream: TStream;
:   Buffer: TIdManagedBuffer;
:   startTime: String;
:   endTime: String;
:   check: Boolean;
:   inputstream : TStream;
:   encString : WideString;
: implementation
:
: {$R *.dfm}
:
: procedure TForm1.Button1Click(Sender: TObject);
: begin
:
:   IdTCPClient1.Host := '211.178.181.83';
:   IdTCPClient1.Port := StrToInt('7777');
:   IdTCPClient1.Connect(10000);
:
:   startTime := FormatDateTime('yyyy-mm-dd, HH:MM:SS', Now);
:   Edit2.Text := startTime;
:
:
:   str := 'Hello';
:
:
:   IdTCPClient1.WriteLn(str);  // 서버측(자바)으로 정상 송신
:   str := IdTCPClient1.ReadLn('end', 10000, 1000);
:
:
:   Edit1.Text := str;   // 서버측(자바) 로부터 'abcde'를 받아올 것으로 예측했으나 실패
:   endTime := FormatDateTime('yyyy-mm-dd, HH:MM:SS', Now);
:   Edit3.Text := endTime;
:   end;
:
: end.
:
:
: ============================서버측 =================================
:  OutputStream out = socket.getOutputStream();
:                 java.io.InputStream in = socket.getInputStream();
:                
:                 DataInputStream din = new DataInputStream(in);
:                 DataOutputStream dos = new DataOutputStream(out);
:  
:                 BufferedReader br = new BufferedReader(new InputStreamReader(in));
:                 BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(out));
:             
:                 String info = br.readLine();
:                
:                System.out.println("input : "+ info);   // 델파이 클라이언트로부터 받아온값 정상출력됨
:                dos.writeChars("abcde");

:                 dos.close();
:                 socket.close();
:
: ========================================================================
:
: 도움 부탁드립니다.

+ -

관련 글 리스트
15429 자바(서버) 델파이(클라이언트) 간 문자열 주고 받는 프로그램을 작성중에 있습니다. 김동진 2567 2015/03/12
15430     Re:자바(서버) 델파이(클라이언트) 간 문자열 주고 받는 프로그램을 작성중에 있습니다. 정영훈 2392 2015/03/12
15431         Re:Re:자바(서버) 델파이(클라이언트) 간 문자열 주고 받는 프로그램을 작성중에 있습니다. 정영훈 2280 2015/03/12
15432             Re:Re:Re:정말 감사합니다. 해결 되었습니다. 김동진 2089 2015/03/12
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.