ich den folgenden Code verwenden:File.mkdir() und mkdirs() erstellen Datei statt Verzeichnis
final File newFile = new File("/mnt/sdcard/test/");
newFile.mkdir(); // if I use mkdirs() result is the same
Und es erzeugt eine leere Datei! Warum?
ich den folgenden Code verwenden:File.mkdir() und mkdirs() erstellen Datei statt Verzeichnis
final File newFile = new File("/mnt/sdcard/test/");
newFile.mkdir(); // if I use mkdirs() result is the same
Und es erzeugt eine leere Datei! Warum?
Sie würden mkdirs() nicht verwenden, außer Sie möchten, dass jeder dieser Ordner in der Struktur erstellt wird. Versuchen Sie nicht, den zusätzlichen Schrägstrich am Ende der Zeichenfolge hinzuzufügen, um zu sehen, ob das funktioniert.
Zum Beispiel
final File newFile = new File("/mnt/sdcard/test");
newFile.mkdir();
Ich habe am Ende mit 2 Schrägstrichen versucht, und es funktioniert, danke! – arts777
Es gibt keine "/ mnt/sdcard", die auf alle Android-Geräte (KitKat) auf die echte SD-Karte zeigt. Ich habe auch versucht, die beiden Schrägstriche am Ende mit "/ storage/external_SD/Android/data/
Try
String rootPath=Environment.getExternalStorageDirectory().getAbsolutePath()+"/test/";
File file=new File(rootPath);
if(!file.exists()){
file.mkdirs();
}
Zunächst einmal verwenden Sie nicht einen Dateipfad mit "/ mnt/sdcard/test" verwenden sollten, kann dies Probleme verursachen mit einige Android-Telefone. Verwenden Sie stattdessen:
Es erstellt eine leere Datei, seit Sie den Bindestrich hinzugefügt.
Nachdem Sie nun Ihren Weg den folgenden Code verwenden:
try {
File dir = new File(fullPath);
if (!dir.exists()) {
dir.mkdirs();
}
}
catch(Exception e){
Log.w("creating file error", e.toString());
}
>> Zuerst sollten Sie keinen Dateipfad mit "/ mnt/sdcard/test" verwenden >> Es ist OK, weil es Beispielcode ist. Tatsächlich ist es ein Teil des Dateimanagers und ich versuche ein Verzeichnis mit einem benutzerdefinierten Pfad zu erstellen. Also benutze ich keinen hardcodierten Pfad "/ mnt/sdcard /" in echtem Code. – arts777
In diesem Fall fair genug. – Max
Wenn ich benötigen, um sicherzustellen, dass alle Verzeichnisse für eine Datei vorhanden ist, aber ich habe nur Filepath - ich
new File(FileName.substring(0,FileName.lastIndexOf("/"))).mkdirs();
sind Bist du sicher, es ist eine leere Datei? – ariefbayu
---- rwxr-x system sdcard_rw 9873 – arts777
cat/mnt/sdcard/test ->/mnt/sdcard/test: ungültige Länge – arts777