目前我正在向DataOutputStream写一个short数组,如下所示:
for (int i = 0; i < samplesRead; i++)
{
dos.writeShort(audioBuffer[i]);
}
有没有办法一举一动,而不是每个元素?
由于
答案 0 :(得分:0)
@Scary Wombat建议,根据oracle
对象是类实例或数组。
DataOutputStream用于基本类型但不是对象。
您可以使用ObjectOutputStream
一次性将数组写入输出流。
例如,
import java.io.File;
import java.io.FileOutputStream;
import java.io.ObjectOutputStream;
public class Test {
public static void main(String args[]){
try{
short audioBuffer[] = new short[10000];
ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(new File("test.txt")));
oos.writeObject(audioBuffer);
oos.close();
}catch(Exception e){
e.printStackTrace();
}
}
}