PDA

View Full Version : سوال د مود سوکت پروگرمینگ



molanagezadeh
پنج شنبه 03 مرداد 1392, 16:38 عصر
با سلام
دوستان لطفا"راهنمایی کنید
چطور یک فایل متنی که دارای دو ستون اطلاعات است را از روی کامپیوتر سرویس دهنده خط به خط خوانده و سپس این اطلاعات را از طریق سوکت برای کامپیوتر مشتری ارسال کنیم ؟
از طریق کد راهنمایی کنید ممنون میشم .
با تشکر

CsharpNevisi
پنج شنبه 03 مرداد 1392, 17:43 عصر
با استفاده از دستور split میتونی این کارو بکنی ... !!!
مثلا متن ما اینه :
Row1,Row2
خی همینو برای سرویس گیرنده بفرست و با دستور اسپلیت دوتاش کن :
string[] a = "Row1,Row2".split(',');

molanagezadeh
پنج شنبه 03 مرداد 1392, 17:49 عصر
سلام
خیلی ممنون
میشه کد کامل سادش رو برام ارسال کنید تا خودم روش کار کنم و اشکالام رو بپرسم خیلی ممنون میشم

CsharpNevisi
پنج شنبه 03 مرداد 1392, 18:02 عصر
سلام
خیلی ممنون
میشه کد کامل سادش رو برام ارسال کنید تا خودم روش کار کنم و اشکالام رو بپرسم خیلی ممنون میشم

بلدی برنامه سرور کلاینت بنویسی یا اونم بفرستم ؟

molanagezadeh
پنج شنبه 03 مرداد 1392, 18:14 عصر
بلدی برنامه سرور کلاینت بنویسی یا اونم بفرستم ؟

اگر مشکلی نداره برام بفرستید تا مفهومش رو کاملا بدونم . یه چیزایی دارم میخوام او نا رو با هم مچ کنم و یه چیز عالی در بیارم .
با تشکر

CsharpNevisi
پنج شنبه 03 مرداد 1392, 18:19 عصر
اگر مشکلی نداره برام بفرستید تا مفهومش رو کاملا بدونم . یه چیزایی دارم میخوام او نا رو با هم مچ کنم و یه چیز عالی در بیارم .
با تشکر

با شه من از اول در حد یه چیز مبتدی برات تو همین تایپیک کد میزارم ... !!!!!
فقط صبر کن بنویسمش ... !!!

CsharpNevisi
پنج شنبه 03 مرداد 1392, 18:34 عصر
اول این فضاها رو اضافه کن
using System.Net;
using System.Net.Sockets;
using System.Threading;
اینارو تو کلاس برنامه بنویس :
IPEndPoint IPEP;
Socket server;

بعدش اینطوری متصل شو به سرور :
try
{
IPEP = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 9050);
server = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
server.Connect(IPEP);
}
catch (Exception ee)
{
MessageBox.Show(ee.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
حالا با این کد دو تا ستون به سرور بفرست ::
server.Send(Encoding.ASCII.GetBytes("ستون اول/ستون دوم"));
اینم برای سرور :
با این کد وصل شو به کلاینت و داده رو ازش بگیر و سوا سوا نمایشش بده :
IPEndPoint IPEP;
Socket NewSock;
Socket Client;
this.Text = "whating for a clinet";
IPEP = new IPEndPoint(IPAddress.Any, 9050);
NewSock = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
NewSock.Bind(IPEP);
NewSock.Listen(10);
Client = NewSock.Accept();
int recv;
byte[] data = new byte[1024];
recv = Client.Receive(data);
string[] aaa = (Encoding.ASCII.GetString(data)).Split('/');
foreach (string msg in aaa)
{
MessageBox.Show(msg);
}
امیدوارم به دردت بخوره ... !!!

molanagezadeh
پنج شنبه 03 مرداد 1392, 18:52 عصر
اول این فضاها رو اضافه کن
using System.Net;
using System.Net.Sockets;
using System.Threading;
اینارو تو کلاس برنامه بنویس :
IPEndPoint IPEP;
Socket server;

بعدش اینطوری متصل شو به سرور :
try
{
IPEP = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 9050);
server = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
server.Connect(IPEP);
}
catch (Exception ee)
{
MessageBox.Show(ee.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
حالا با این کد دو تا ستون به سرور بفرست ::
server.Send(Encoding.ASCII.GetBytes("ستون اول/ستون دوم"));
اینم برای سرور :
با این کد وصل شو به کلاینت و داده رو ازش بگیر و سوا سوا نمایشش بده :
IPEndPoint IPEP;
Socket NewSock;
Socket Client;
this.Text = "whating for a clinet";
IPEP = new IPEndPoint(IPAddress.Any, 9050);
NewSock = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
NewSock.Bind(IPEP);
NewSock.Listen(10);
Client = NewSock.Accept();
int recv;
byte[] data = new byte[1024];
recv = Client.Receive(data);
string[] aaa = (Encoding.ASCII.GetString(data)).Split('/');
foreach (string msg in aaa)
{
MessageBox.Show(msg);
}
امیدوارم به دردت بخوره ... !!!

با تشکر از شما دوست گرامی
ببخشید فایل اجراییش و دارید برام بفرستید ؟میخواستم از دیباگ فایل اجراییش رو ببینم الان رو سیستمم ویزوال ندارم باید نصبش کنم .
ممنون میشم

molanagezadeh
جمعه 04 مرداد 1392, 11:48 صبح
با سلام دوست گرامی
میتونید فایل اجرایش رو برام آپ کنید .نیاز مبرم دارم .با تشکر

sohil_ww
جمعه 04 مرداد 1392, 11:53 صبح
با سلام دوست گرامی
میتونید فایل اجرایش رو برام آپ کنید .نیاز مبرم دارم .با تشکر

کد ها رو که دوستمون آقای csharpnevis دادن چرا خورتون وارد کامپایلتون نمی کنید

molanagezadeh
جمعه 04 مرداد 1392, 12:12 عصر
کردم .ببینید من میخوام فقط فایل متنی رو از یکی از دایو هام به صورت ستون به ستون از سرور بخونه و به کلاینت بفرسته .
این کارو کردم :
با استفاده از دستور split میتونی این کارو بکنی ... !!!
مثلا متن ما اینه :
Row1,Row2
خی همینو برای سرویس گیرنده بفرست و با دستور اسپلیت دوتاش کن :
1
string[] a = "Row1,Row2".split(',');


جواب نگرفتم .میخواستم خودش داخل متن و بخونه.و بفرسته

CsharpNevisi
جمعه 04 مرداد 1392, 13:38 عصر
کردم .ببینید من میخوام فقط فایل متنی رو از یکی از دایو هام به صورت ستون به ستون از سرور بخونه و به کلاینت بفرسته .
این کارو کردم :
با استفاده از دستور split میتونی این کارو بکنی ... !!!
مثلا متن ما اینه :
Row1,Row2
خی همینو برای سرویس گیرنده بفرست و با دستور اسپلیت دوتاش کن :
1
string[] a = "Row1,Row2".split(',');


جواب نگرفتم .میخواستم خودش داخل متن و بخونه.و بفرسته

جواب نگرفتی ؟؟؟؟
باید ستون ها با / از هم جدا شده باشند ... !!!
اینم سورسش:

CsharpNevisi
جمعه 04 مرداد 1392, 15:46 عصر
این دیگه همون چیزیه که میخوایی ... !!!