2016-02-13 1 views
0

Je suis nouveau à Android en développement, et j'ai besoin d'aide. J'ai deux problèmes qui sont:Création de sous-répertoires dans un répertoire et être en mesure d'enregistrer des données à l'intérieur

  1. Je ne sais pas comment créer deux sous-répertoires dans mon répertoire principal. Je sais comment créer sous-répertoire dans un répertoire (File directory = new File(Environment.getExternalStorageDirectory()+"Saling-Wika/Audio&Text Files");), mais ce que je veux, c'est qu'il y aurait deux sous-répertoires dans mon sous-répertoire principal (Les fichiers audio sont différents deux sous-répertoires dans le répertoire Saling-Wika qui est le répertoire principal).
  2. Je ne sais pas comment je vais pouvoir sauvegarder mes données dans les sous-répertoires que j'ai créés. Voici le code de mon module d'enregistrement où les données audio provient de:

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

Je veux que mes données audio seront stockés dans le répertoire des fichiers audio, mais je ne sais pas comment je Je vais pouvoir faire ça. Aidez-moi, s'il vous plaît.

+0

Bien faites vos sous-répertoires séparément. Votre question est si étrange. Si vous pouvez créer un sous-répertoire, vous pouvez en créer un autre. – greenapps

+0

J'ai finalement travaillé à créer des sous-répertoires séparément, donc le premier problème est résolu. Et le deuxième? Voulez-vous me aider? @greenapps –

+0

Eh bien, il semble que vous avez commandé myAudioRecorder pour le faire. Est-ce vrai? Alors pourquoi ne l'as-tu pas dit? Vous avez également oublié de dire ce qui se passe maintenant. Où indiquez-vous le bon répertoire à votre enregistreur? – greenapps

Répondre

0

J'ai enfin résolu mes problèmes, et voici les solutions que j'ai fait:

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

Voici le code que j'ai créé deux sous-répertoires (Audio & texte dossiers de fichiers) à l'intérieur du répertoire principal (Saling-Wika fodler).

outputFile = Environment.getExternalStorageDirectory().getAbsolutePath() + "/Saling-Wika/Audio Files/" + format + ".3gp"; 

Et voici comment mes fichiers audio sont enregistrés dans le dossier Audio Files.