日期:2014-05-20 浏览次数:21080 次
//返回连接时间的服务器程序 Netclock.java
//此程序端口号为6000的服务器程序
//收到客户端连接请求后将返回连接时间
//安<Ctrl>+C可终止程序的运行
//使用方法:java Netclock
//package test;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Date;
import javax.xml.crypto.Data;
public class Netclock
{
/**
* @param args
*/
public static void main(String[] args)
{
ServerSocket servsock = null; //服务器Socket(套接字)
Socket sock; //读写Socket对象
OutputStream out; //输出流
String outstr; //存放输出数据的字符串
int i; //输出循环控制变量
Date d; //日期对象
try
{
//生成服务器socket
servsock = new ServerSocket(6000,300);
//服务器处理循环
while(true)
{
sock = servsock.accept(); //接收连接
System.out.println("连接已经受理!");
//生成输出数据
d = new Date();
outstr = "\n"+"Hello FengTaiyun,can you receive me?"
+"\n"+d.toString()+"\n"
+"Yes you have received completely!"+"\n";
//输出数据
out = sock.getOutputStream();
//发送数据
System.out.println("发送数据\""+outstr+"\"");
for(int j=0; j<outstr.length();j++)
out.write((int)outstr.charAt(j));
out.write('\n');
//连接结束
sock.close();
}
}
catch(Exception e)
{
System.exit(1);
}
}
}
//返回连接时间的服务器程序 Netclock.java
//此程序端口号为6000的服务器程序
//收到客户端连接请求后将返回连接时间
//安<Ctrl>+C可终止程序的运行
//使用方法:java Netclock
//package test;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Date;
import javax.xml.crypto.Data;
public class Netclock
{
/**
* @param args
*/
public static void main(String[] args)
{
ServerSocket servsock = null; //服务器Socket(套接字)
Socket sock; //读写Socket对象
OutputStream out; //输出流
String outstr; //存放输出数据的字符串
int i; //输出循环控制变量
Date d; //日期对象
try
{
//生成服务器socket
servsock = new ServerSocket(6000,300);
//服务器处理循环
while(true)
{
sock = servsock.accept(); //接收连接
System.out.println("连接已经受理!");
//生成输出数据
d = new Date();
outstr = "\n"+"Hello FengTaiyun,can you receive me?"
+"\n"+d.toString()+"\n"
+"Yes you have received completely!"+"\n";
//输出数据
out = sock.getOutputStream();
//发送数据
System.out.println("发送数据\""+outstr+"\"");
for(int j=0; j<outstr.length();j++)
out.write((int)outstr.charAt(j));
out.write('\n');
//连接结束
sock.close();
}
}
catch(Exception e)
{
System.exit(1);
}
}
}
//返回连接时间的服务器程序 Netclock.java
//此程序端口号为6000的服务器程序
//收到客户端连接请求后将返回连接时间
//安<Ctrl>+C可终止程序的运行
//使用方法:java Netclock
package test;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Date;
import java.io.PrintWriter;
import javax.xml.crypto.Data;
public class Netclock
{
/**
* @param args
*/
public static void main(String[] args)
{
ServerSocket servsock = null; //服务器Socket(套接字)
Socket sock; //读写Socket对象
OutputStream out; //输出流
String outstr; //存放输出数据的字符串
int i; //输出循环控制变量
Date d; //日期对象
try
{
//生成服务器socket
servsock = new ServerSocket(6000);
//服务器处理循环
while(true)
{
sock = servsock.accept(); //接收连接
System.out.println("连接已经受理!");
//生成输出数据
d = new Date();
outstr = "\n"+"Hello FengTaiyun,can you receive me?"
+"\n"+d.toString()+"\n"
+"Yes you have received completely!"+"\n";
//输出数据
out = sock.getOutputStream();
PrintWriter pw=new PrintWriter(out);
//发送数据
System.out.println("发送数据\""+outstr+"\"");
pw.write(outstr);
//连接结束
out.close();
pw.close();
sock.close();
}
}
catch(Exception e)
{
System.exit(1);
}
}
}
//客户端测试时间服务器
package test;
import java.net.*;
import java.util.*;
import java.io.*;
public class LockClient
{
public static void main(String[] args)
{
int port = 6000;
Socket s = getSocket(port);
try
{
System.out.println("Connected on port " + port);
BufferedReader in =new BufferedReader(new InputStreamReader(s.getInputStream()));
PrintWriter out;
out = new PrintWriter(s.getOutputStream(),true);
String quote = in.readLine();
// write the quote on the chalkboard
while(quote!=null) {
System.out.println(quote);
quote = in.readLine();
}
s.close();
out.close();
in.close();
}
catch (Exception e)
{
e.printStackTrace();
}
}
private static Socket getSocket(int port)
{
Socket s=null;
String host;
InetAddress ip;
try
{
//ip = InetAddress.getByName(host);
s=new Socket("127.0.0.1",port);
return s;
}
catch (UnknownHostException e)
{
System.out.println("The host is unknown.");
}
catch (IOException e)
{
System.out.println("Network error.");
}
finally{
}
return s;
}
}