PDA

View Full Version : سوال: ارسال متن از راه دور با سوکت



ravand
شنبه 11 آذر 1391, 14:43 عصر
سلام
من دو تا برنامه با سوکت نوشتم که یکیش کلاینت هست و یکی دیگه سرور . نمیدونم چرا فقط توی خود سیستمم کار میکنه ولی اگه بخوام متن رو از توی سیستمم بفرستم به سیستم کاربر دیگه مثلاً یه شهر دیگه کار نمیکنه و فقط توی شبکه کار میکنه . آیا راهی هست که من بتونم متن رو برای یه نفر با یه سیستم دیگه و یه شهر دیگه ارسال بکنم؟

client.java
package main;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
import java.awt.*;
import java.io.*;
import java.util.*;
import java.net.*;
public class client {
static int exi;
public static void main(String[] a) throws Exception {
JFrame frame = new JFrame("ravand");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOS E);
Container contentPane = frame.getContentPane();
SpringLayout layout = new SpringLayout();
contentPane.setLayout(layout);
final JTextArea text5 = new JTextArea(18,43);
final JScrollPane pane = new JScrollPane(text5);

contentPane.add(pane);
layout.putConstraint(SpringLayout.WEST, pane,10,SpringLayout.WEST, contentPane);
layout.putConstraint(SpringLayout.NORTH, pane,20,SpringLayout.NORTH, contentPane);

//Display the window.
frame.pack();
frame.setLocation(280, 150);
frame.setSize(501,430);
frame.setVisible(true);

try {
Socket skt = new Socket("39.254.36.50", 1234);
BufferedReader in = new BufferedReader(new InputStreamReader(skt.getInputStream()));
System.out.print("دریافت رشته '");
while (!in.ready()) {}
String javab=in.readLine();
System.out.print("'\n");
text5.append(javab+"\n");
in.close();
}
catch(Exception e) {
System.out.print("Whoops! It didn't work!\n");
}

}

}



Server.java
import java.lang.*;
import java.io.*;
import java.net.*;
class Server {
public static void main(String args[]) {
String data = "ravandi";
try {
ServerSocket srvr = new ServerSocket(1234);
Socket skt = srvr.accept();

PrintWriter out = new PrintWriter(skt.getOutputStream(), true);
System.out.print("Sending string: '" + data + "'\n");
out.print(data);
out.close();
skt.close();
srvr.close();
}
catch(Exception e) {
System.out.print("Whoops! It didn't work!\n");
}
}
}
متشکرم.