我是android开发的新手,我需要帮助。我有两个问题:
File directory = new File(Environment.getExternalStorageDirectory()+"Saling-Wika/Audio&Text Files");
)内创建子目录,但我想要的是我的主子目录中会有两个子目录(音频文件和文本文件是Saling内部不同的两个子目录 - Wika目录是主目录)。我不知道如何将数据保存到我创建的子目录中。 以下是我的记录模块的代码,其中音频数据来自:
public class RecordModule extends Activity {
Button SpeakBtn, StopBtn;
private MediaRecorder myAudioRecorder;
private String outputFile = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.recordmodule);
SpeakBtn = (Button) findViewById(R.id.SpeakBtn);
StopBtn = (Button) findViewById(R.id.StopBtn);
StopBtn.setEnabled(false);
SpeakBtn.setEnabled(true);
SimpleDateFormat datetime = new SimpleDateFormat("ddMMyyyyhhmmss");
String format = datetime.format(new Date());
outputFile = Environment.getExternalStorageDirectory().getAbsolutePath() + "/" + format + ".3gp";
myAudioRecorder = new MediaRecorder();
myAudioRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
myAudioRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
myAudioRecorder.setAudioEncoder(MediaRecorder.OutputFormat.AMR_NB);
myAudioRecorder.setOutputFile(outputFile);
SpeakBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
myAudioRecorder.prepare();
myAudioRecorder.start();
}
catch (IllegalStateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
SpeakBtn.setEnabled(false);
StopBtn.setEnabled(true);
Toast.makeText(getApplicationContext(), "Recording started", Toast.LENGTH_SHORT).show();
}
});
StopBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
myAudioRecorder.stop();
myAudioRecorder.release();
myAudioRecorder = null;
StopBtn.setEnabled(false);
SpeakBtn.setEnabled(true);
Toast.makeText(getApplicationContext(), "Audio recorded successfully", Toast.LENGTH_SHORT).show();
}
});
}
我希望我的音频数据将存储到音频文件目录中,但我不知道我将如何做到这一点。请帮帮我。
答案 0 :(得分:0)
我终于解决了我的问题,以下是我所做的解决方案:
String folder_main = "Saling-Wika"
File MainDir = new File (Environment.getExternalStorage();, folder_main);
if (!MainDir.exists()){
MainDir.mkdirs();
}
File f1 = new File (Environment.getExternalStorage() + "/" + folder_main, "Audio Files");
if (!MainDir.exists()){
MainDir.mkdirs();
}
File f2 = new File (Environment.getExternalStorage() + "/" + folder_main, "Text Files");
if (!MainDir.exists()){
MainDir.mkdirs();
}
}
以下是我在主目录(Saling-Wika fodler)中创建两个子目录(音频和文本文件夹)的代码。
outputFile = Environment.getExternalStorageDirectory().getAbsolutePath() + "/Saling-Wika/Audio Files/" + format + ".3gp";
以下是我的音频文件保存到Audio Files文件夹的方式。