我有一个在android手机中创建的wav文件,我想通过网络套接字将此文件发送到服务器。我正在使用autobahn lib进行Web套接字连接。在代码下方用于发送文件流。
byte [] buffer = new byte [1024];
FileInputStream fis = new FileInputStream(myFile);
Log.d(TAG, "Sending...");
boolean status = true;
while (status) {
int in = fis.read(buffer, 0, buffer.length);
if(in != -1){
if(in < buffer.length){
byte[] temp = new byte[in];
for(int i=0; i<in; i++){
temp[i] = buffer[i];
}
mConnection.sendBinaryMessage(temp);
} else {
mConnection.sendBinaryMessage(buffer);
}
} else {
status = false;
}
}
.wav音频文件在移动设备中正常播放。但是在服务器端,收到的文件不是正确的wav音频文件而且没有播放。
服务器代码:
public void onMessage(byte[] data, boolean arg1) {
try {
System.out.println("Starting new recording.");
FileOutputStream fOut = new FileOutputStream(f1, true);
fOut.write(data);
fOut.close();
} catch (Exception e) {
e.printStackTrace();
}
}
请帮助.........