最简单网络编程之客户端往服务器端送东西02
来源:互联网 发布:代理ip软件 编辑:程序博客网 时间:2024/05/21 20:26
package com.lin;import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.FileOutputStream;import java.io.IOException;import java.net.ServerSocket;import java.net.Socket;public class MusicTCPServer {private BufferedInputStream bufferedInputStream;// 创建BufferedReader对象private ServerSocket server;// 创建服务套接字对象private Socket socket; private BufferedOutputStream bufOutStream =null;public void getServer() {try {server = new ServerSocket(8998);System.out.println("MusicTCPServer服务器套接字已创建成功");while (true) {System.out.println("等待客户机的连接");socket = server.accept();//等待客户机的连接,进入等待状态,并返回这个客户端对象//当客户端能够连接上之后,读取客户端传过来的东西System.out.println("连接成功");//注意BufferedReader是用于处理字符串的,而bufferedInputStream是用来处理二进制的 bufferedInputStream=new BufferedInputStream(socket.getInputStream()); //注意c:\\1.mp3原本没有bufOutStream =new BufferedOutputStream(new FileOutputStream("c:\\1.mp3"));getClientMessage();}} catch (Exception e) {e.printStackTrace();}}private void getClientMessage() {try {int ch=0; while ((ch=bufferedInputStream.read())!=-1) { //服务器向客户端传送数据 bufOutStream.write(ch);} System.out.println("上传成功");} catch (Exception e) {e.printStackTrace();} finally {try {if (bufOutStream != null)bufOutStream.close();if (bufferedInputStream != null)bufferedInputStream.close();if (socket != null)socket.close();} catch (IOException e) {e.printStackTrace();}}}public static void main(String[] args) {MusicTCPServer tcp = new MusicTCPServer();tcp.getServer();}}
客户端
package com.lin;import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.FileInputStream;import java.io.OutputStream;import java.net.*;public class MusicTCPClient {public static void main(String[] args) {Socket s = null;OutputStream os = null;BufferedInputStream bufInStream=null;BufferedOutputStream bufOutStream=null; try { // 建立连接 s = new Socket("127.0.0.1",8998);//在客户端建立连接要指定ip 和要链接的服务器端口 os = s.getOutputStream();//这里 的OutputStream是从Socket里获取的 bufOutStream=new BufferedOutputStream(os); bufInStream=new BufferedInputStream(new FileInputStream("c:\\0.mp3")); int ch=0; while ((ch=bufInStream.read())!=-1) { //向服务器发送东西 bufOutStream.write(ch);} } catch (Exception e) {e.printStackTrace();}finally{try {if(bufInStream!=null)bufInStream.close();if(os!=null)os.close();if(s!=null)s.close();} catch (Exception e) {e.printStackTrace();}}}}
阅读全文
0 0
- 最简单网络编程之客户端往服务器端送东西
- 最简单网络编程之客户端往服务器端送东西02
- 最简单网络编程之客户端往服务器端送东西03
- linux 网络编程之最简单的tcp通信客户端
- java网络编程之socket网络编程示例(服务器端/客户端)
- java网络编程之socket网络编程示例(服务器端/客户端)
- Android网络通信----1.Socket编程之简单客户端与服务器端通信
- TCP IP网络编程1 简单的回声服务器端、客户端
- java网络编程客户端,服务器端
- 网络编程学习之TCP客户端与服务器端
- java网络编程之简单客户端服务器
- 最简单的FTP客户端、服务器端
- Linux网络编程--客户端连接服务器端
- Linux网络编程-客户端与服务器端通信
- 网络编程Tcp的客户端和服务器端
- 网络编程--客户端与服务器端总结
- UNIX网络编程----TCP客户端和服务器端
- UNIX网络编程----UDP客户端和服务器端
- React入门笔记
- js制作的简易购物车
- 分享一套visual stuido的字体和颜色
- openwrt系统编译框架
- 解决BootStrap Table表格中含中文时点击导出数据无响应的问题(Uncaught INVALID_CHARACTER_ERR: DOM Exception 5)
- 最简单网络编程之客户端往服务器端送东西02
- 计蒜课-判断质数
- UIScrollView内容偏移的问题
- [编程题] 等差数列
- Redis总结
- Codeforces Round #427 (Div. 2) D
- 常用正则表达式
- poj1019组合数学
- 【HDU 6129 Just do it】& 数学推导