服务器端代码:
DataInputStream datainput;
DataOutputStream dataoutput;
byte[] musicbyte=new byte[1024];
int i;
File musicserver=new File("music/",brsplit[1]);
datainput=new DataInputStream(new FileInputStream(musicserver));
dataoutput=new DataOutputStream(sk.getOutputStream());
while((i=datainput.read(musicbyte))!=-1){
dataoutput.write(musicbyte,0,i);
dataoutput.flush();
}
datainput.close();
dataoutput.close();
客户端代码:
byte[] bt=new byte[1024];
int i;
//file文件用来存储读取获得的音乐二进制
File file=new File(chooser1.getSelectedFile().toString());
if(file!=null){
try{
sk=new Socket("127.0.0.1",8088);
//向服务器发送请求
printwrite=new PrintWriter(sk.getOutputStream());
printwrite.println("开始下载歌曲"+list.getSelectedValue().toString());
printwrite.flush();
//接收服务器返回的歌曲,并写在客户端所选择的目录下面
datainput=new DataInputStream(sk.getInputStream());
dataoutput=new DataOutputStream(new FileOutputStream(file));
while((i=datainput.read(bt))!=-1){
dataoutput.write(bt,0,i);
System.out.println(bt);
dataoutput.flush();
}
printwrite.close();
dataoutput.close();
这个样的,就是不能实现音乐文件的下载,下载为0字节。高手们给你看下,怎样改才可,实现MP3文件的下载成功!