ورود

View Full Version : Socket Programming با استفاده از J2ME



مهران رسا
دوشنبه 03 آبان 1389, 17:48 عصر
با سلام

میخوام از طریق ارتباط TCP به یک سرور متصل بشم و پس از ارسال درخواست ، جواب مربوطه رو از سرور دریافت کنم . اگه امکان داره راهنمایی کنید .

ممنون .

مهران رسا
پنج شنبه 20 آبان 1389, 15:33 عصر
جواب :


ابتدا کتابخانه های زیر رو بارگزاری کنید :


import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import java.io.*;
import javax.microedition.io.*;



بعد از این کد استفاده کنید :


public String recx;

StreamConnection connection = (StreamConnection)
Connector.open("socket://ServerIP:SererPort");
//Connected
PrintStream output =
new PrintStream(connection.openOutputStream());

//Make a packet
String pck;
pck = (char)0 + "OurPacket:HelloServer";

//Send the packet
output.println(pck);
output.flush();

//Get Response
InputStream in = connection.openInputStream();
int ch;
while( ( ch = in.read() ) != 13 )
{
recx = recx + (char)ch;
}
PrintMyResult(recx);



توضیح : از طریق IP و Port به سرور متصل میشیم و یک رشته دلخواه برای سرور ارسال میکنیم . سپس کاراکترهای دریافتی از سمت سرور رو تا زمان رسیدن به کاراکتر 13 (Crlf) دریافت کرده و ذخیره میکنیم. توجه داشته باشید شما برای مشخص کردن پایان بسته از سمت سرور میتونید از کاراکتر دلخواه خودتون استفاده کنید .

tecnocomputer2
پنج شنبه 12 اسفند 1389, 20:01 عصر
میشه یه Sample بگید؟
که این کد توش به کار رفته؟
مثلاً یه textfild و یه دکمه که وقتی روی دکمه کلیک شد اون کد اجرا بشه...

ghasem.fattahpour
جمعه 13 اسفند 1389, 01:32 صبح
توی سوکت هیچ فرقی با se نداره (تا اونجایی که می دونم). فقط کمی توی threading فرق داره !

ghasem.fattahpour
جمعه 13 اسفند 1389, 01:40 صبح
توی سوکت هیچ فرقی با se نداره (تا اونجایی که می دونم). فقط کمی توی threading فرق داره !