1. 程式人生 > >java_客戶端向服務端上傳mp3檔案資料

java_客戶端向服務端上傳mp3檔案資料

客戶端:

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();
	}

}