如何在android的SD卡中保存多个录音语音?
我知道如何按照下面的代码录制语音如何在android的SD卡中保存多个录音语音?,android,android-sdcard,Android,Android Sdcard,我知道如何按照下面的代码录制语音 String path = android.os.Environment.getExternalStorageDirectory()+"/Record/test.3gp"; boolean exists = (new File(android.os.Environment.getExternalStorageDirectory()+"/Record/")).exists(); if(!exists)
String path = android.os.Environment.getExternalStorageDirectory()+"/Record/test.3gp";
boolean exists = (new File(android.os.Environment.getExternalStorageDirectory()+"/Record/")).exists();
if(!exists)
{
newFile(android.os.Environment.getExternalStorageDirectory()+"/Record/").mkdirs();
}
MediaRecorder recorder = new MediaRecorder();
recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
recorder.setOutputFile(path);
try {
recorder.prepare();
recorder.start();
} catch (IllegalStateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
在这段代码中,我在“recorder.setOutputFile(path);”中给出了输出路径。它工作正常,但我的问题是,如果我再次录制,它将覆盖相同的路径,因此请帮助我如何在SD卡的相同路径中保存多个语音。请帮助我文件被覆盖,因为
MediaRecorder
对象每次都获得相同的输出路径。每次都需要为输出文件提供不同的名称
一个好方法是在文件名中使用日期/时间
一个简单的例子可以是:
String path = android.os.Environment.getExternalStorageDirectory()
+ "/Record/test_" + System.currentTimeMillis() + ".3gp";
文件被覆盖,因为
MediaRecorder
对象每次都获得相同的输出路径。每次都需要为输出文件提供不同的名称
一个好方法是在文件名中使用日期/时间
一个简单的例子可以是:
String path = android.os.Environment.getExternalStorageDirectory()
+ "/Record/test_" + System.currentTimeMillis() + ".3gp";
工作正常,但我想给出名称,而不是test_“+System.currentTimeMillis()+”.3gp“通过对话框用户输入名称,当用户单击停止录制按钮时,它应更新为SD卡。请帮助我,您可以在录制开始之前提示用户输入文件名。这很好,那么在单击停止录制时是否可以给出文件名否,您必须在调用
prepare()
之前指定文件名。”。但您可以采取另一种方法:每次都记录在同一个文件中(就像您正在做的那样),然后询问用户名称,然后重命名该文件。工作正常,但我想给出名称,而不是test_“+System.currentTimeMillis()+”。3gp“通过对话框用户输入名称,当用户单击停止录制按钮时,它应更新为SD卡。请帮助我,您可以在录制开始之前提示用户输入文件名。这很好,那么在单击停止录制时是否可以给出文件名否,您必须在调用prepare()
之前指定文件名。”。但您可以采取另一种方法:每次都记录在同一个文件中(就像您正在做的那样),然后询问用户名称,然后重命名该文件。