import java.io.*;
import java.net.*;
class TextClient
{
public static void main(String[] args)throws Exception
{
Socket s = new Socket("114.98.252.176",10006);
//定义缓冲区,读取文件
BufferedReader bufr = new BufferedReader(new FileReader("IPDemo.java"));
//定义socket写入流,把信息写入服务器端
PrintWriter out = new PrintWriter(s.getOutputStream(),true);
//DataOutputStream dos = new DataOutputStream(s.getOutputStream());
//long time = System.currentTimeMillis();
//out.println(time);
//out.println(time);//时间是唯一的,可以作为结束标记
String line = null;
while((line=bufr.readLine()) != null)
{
out.println(line);//把数据输出到服务器端
}
//out.println("over");//自定义结束标记,不好,万一文件中over,就会提前结束
//dos.writeLong(time);//输出时间标记
s.shutdownOutput();//关闭客户端输出流,相当于在流中加一个结束标记,相当于-1
//否则,无法收到服务器返回的信息
//定义socket读取流,读取服务器返回的信息
BufferedReader bufIn = new BufferedReader(new InputStreamReader(s.getInputStream()));
String str = bufIn.readLine();//获取服务器端的反馈信息
System.out.println(str);
bufr.close();
s.close();
}
}
class TextServer
{
public static void main(String[] args)throws Exception
{
ServerSocket ss = new ServerSocket(10006);
Socket s = ss.accept();
String ip = s.getInetAddress().getHostAddress();//输出ip地址
System.out.println(ip+"....connect");
//DataInputStream dis = new DataInputStream(s.getInputStream());
//long l = dis.readLong();//读取时间标记
//定义socket输入流,读取客户端数据
BufferedReader bufIn = new BufferedReader(new InputStreamReader(s.getInputStream()));
//定义从客户端接收的数据输出地址
PrintWriter out = new PrintWriter(new FileWriter("server.txt"),true);
String line = null;
while((line=bufIn.readLine()) != null)
{
//if("over".equals(line))//判断标记
// break;
out.println(line);//服务器根据定义的方法输出数据
}
//定义socket输出流,把数据反馈到客户端
PrintWriter pw = new PrintWriter(s.getOutputStream(), true);
pw.println("上传成功");
out.close();
s.close();
ss.close();
}
}
------------------------------------------------------------------------------------------------------