在目录中创建子目录并能够将数据保存到其中

Creating subdirectories within a directory and be able to save data into it

我是 android 开发的新手,我需要帮助。我有两个问题:

  1. 我不知道如何在我的主目录中创建两个子目录。我知道如何在目录中创建子目录 (File directory = new File(Environment.getExternalStorageDirectory()+"Saling-Wika/Audio&Text Files");),但我想要的是在我的主子目录中有两个子目录(音频文件和文本文件与 Saling-Wika 中的两个子目录不同主目录)。
  2. 我不知道如何才能将我的数据保存到我创建的子目录中。 这是音频数据来自的我的记录模块的代码:

    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();
            }
        });
    }
    

我希望将我的音频数据存储到 Audio Files 目录中,但我不知道如何才能做到这一点。请帮助我。

我终于解决了我的问题,以下是我所做的解决方案:

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 文件夹中的。