java_客戶端向服務端上傳mp3檔案資料
阿新 • • 發佈:2018-11-09
客戶端:
package cn.itcast.uploadpicture.demo; import java.io.BufferedInputStream; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.io.PrintStream; import java.net.Socket; import java.net.UnknownHostException; public class UploadpicClient { public static void main(String[] args) throws UnknownHostException, IOException { // 1、建立客戶端的Socket服務 Socket s=new Socket("192.168.1.216",10012); // 2、獲取圖片資源 BufferedInputStream burin= new BufferedInputStream(new FileInputStream("F:\\CloudMusic\\羅大佑,黃霑,徐克 - 滄海一聲笑.mp3")); // 3、獲取socket輸出流 PrintStream pso=new PrintStream(s.getOutputStream(),true); // 4、將資料寫入到輸出流 byte[]buff=new byte[1024]; int len=-1; while((len=burin.read(buff))!=-1) { pso.write(buff, 0, len); } s.shutdownOutput(); // 5、獲取服務端的返回的資料 InputStream is=s.getInputStream(); byte[]buffin=new byte[1024]; int lenth=is.read(buffin); String str=new String(buffin,0,lenth); System.out.println(str); // 6、關閉流 s.close(); burin.close(); } }
服務端:
package cn.itcast.uploadpicture.demo; import java.io.BufferedInputStream; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.PrintStream; import java.net.ServerSocket; import java.net.Socket; public class UploadpicServer { public static void main(String[] args) throws IOException { ServerSocket ss=new ServerSocket(10012); Socket s=ss.accept(); System.out.println(s.getInetAddress().getHostAddress()+"connnected......."); BufferedInputStream burin=new BufferedInputStream(s.getInputStream()); File file=new File("serve.mp3"); if(!file.exists()) file.mkdirs(); PrintStream ps=new PrintStream(new FileOutputStream(file),true); byte[]buff=new byte[1024]; int len=-1; while((len=burin.read(buff))!=-1) { ps.write(buff, 0, len); } PrintStream psout=new PrintStream(s.getOutputStream(),true); psout.println("上傳成功"); ss.close(); s.close(); ps.close(); } }