标题: 关于网络编程的面试题求助 [打印本页] 作者: nightwish 时间: 2015-10-27 15:53 标题: 关于网络编程的面试题求助
public class Test9
{
public static void main(String[] args)
{}
}
//客户端
class Client
{
public static void main(String[] args) throws Exception
{
//建立Socket服务
Socket fileLoaderSocket = new Socket("168.168.168.94", 10005);
//从客户端本地读取文件,并写入socket的输出流中
OutputStream out = fileLoaderSocket.getOutputStream();
//实例化对象fileReader
InputStream fileRead = new FileInputStream("G:\\2.mp3");
//建立数组
byte[] buf = new byte[1024];
int len = 0;
//判断是否读到文件末尾
while((len=fileRead.read(buf)) != -1)
{
out.write(buf, 0, len);
}
//告诉服务端,文件已传输完毕
fileLoaderSocket.shutdownOutput();
//获取从服务端反馈的信息
BufferedReader in = new BufferedReader(new InputStreamReader(fileLoaderSocket.getInputStream()));
String serverBack = in.readLine();
System.out.println(serverBack);
//资源关闭
fileLoaderSocket.close();
fileRead.close();
}
}
//服务端
class Server
{
public static void main(String[] args) throws Exception
{
//建立服务端Socket
ServerSocket ss = new ServerSocket(10005);
//接收客户端Socket
Socket fileLoaderSocket = ss.accept();
//打印连接信息
String ip = fileLoaderSocket.getInetAddress().getHostAddress();
System.out.println(ip + "...conncected");
//接收文件,并保存
InputStream in = fileLoaderSocket.getInputStream();
//实例化对象fileSave
OutputStream fileSave = new FileOutputStream("E:\\3.mp3");
//建立数组buf
byte[] buf = new byte[1024];
int len = 0;
//判断是否读到文件末尾
while((len=in.read(buf)) != -1)
{
fileSave.write(buf, 0, len);
//刷新
fileSave.flush();
}
//返回文件复制情况信息
BufferedWriter out = new BufferedWriter(new OutputStreamWriter(fileLoaderSocket.getOutputStream()));
out.write("文件上传成功");
//刷新
out.flush();
//资源关闭
ss.close();
fileLoaderSocket.close();
fileSave.close();
}
}
复制代码
运行结果出现异常:Exception in thread "main" java.net.ConnectException: Connection timed out: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:579)
at java.net.Socket.connect(Socket.java:528)
at java.net.Socket.<init>(Socket.java:425)
at java.net.Socket.<init>(Socket.java:208)
at com.itheima.Client.main(Test09.java:31)作者: nightwish 时间: 2015-10-27 16:39
照毕老师和网上的代码搬运了一下,还是一样的异常,会不会是电脑设置问题?作者: cloud1991 时间: 2015-10-27 16:52
你没导包作者: nightwish 时间: 2015-10-27 17:21