mkdir() n'est pas de créer le nouveau répertoire
Je suis en utilisant Eclipse et jdk1.7. Je fais un programme de base à l'aide de manipulation de fichier, dans lequel un répertoire de sortie à l'intérieur du répertoire. Mais quand je lance le programme, la sortie est en montrant de faux et le répertoire n'est pas faite. Je pensais que la sortie était faux, en raison de la présence d'un répertoire avec le même nom, mais ce n'est pas la raison. J'ai donc besoin d'aide. Voici mon code:
import java.io.File;
public class P {
public static void main(String[] args) {
File f1 = new File ("abc");
File f2 = new File (f1,"abc");
System.out.println(f2.mkdir());
}
}
Sa sortie est faux et pas encore de répertoire a été créé.
Comment puis-je résoudre ce problème? Ce n'est pas seulement dans ce programme, et ce programme dans lequel je suis à l'appel de la méthode mkdir()
est d'avoir le même problème.
Pour les diagnostics, d'impression
f2.getAbsolutPath()
. C'est peut-être en essayant de créer des répertoires dans un endroit où vous n'avez pas accès en écriture?Java 7 a introduit les Fichiers de classe qui utilise des exceptions au lieu de booléenne valeurs de retour. Cela peut être utile pour obtenir une description de ce qui a échoué pour l'avenir de débogage.
OriginalL'auteur user2529216 | 2013-07-19
Vous devez vous connecter pour publier un commentaire.
Vous devez utiliser mkdirs() avec un s si vous souhaitez créer plusieurs répertoires. C'est probablement aussi la peine de vérifier que vous canWrite() à l'emplacement que certains endroits sont autorisées. Ces deux sont sur le Fichier de la classe
OriginalL'auteur RNJ
son
obj.mkdirs()
jetez un oeil à ceci:
La première impression de ne pas créer un répertoire et retourne
false
mais la seconde et retournetrue
OriginalL'auteur tokhi
Créer un répertoire exemple
il semble que vous aurez besoin de travailler sur votre chemin un peu, car il ne ressemble pas à de Fichier va conclure "abc".
Aussi, assurez-vous d'avoir les autorisations sur le chemin que vous tentez de créer le répertoire. Si vous ne le faites pas, ce sera un échec. Il a été un moment depuis que j'ai joué avec Java, de sorte que vous ne savez pas si vous devez faire mkdir appelle tout le chemin vers le bas le chemin (c'est à dire /ici/, /ici/maintenant-ici/, /ici/maintenant-ici/final) ou pas. Pense qu'il peut être récursive, mais que j'avais de la peine de vérifier.
En fait, en regardant les autres réponses ressemble mkdirs serait récursive, mkdir ne l'est pas. J'irais avec mkdirs surtout si l'entrée n'est pas d'être connu dès le début, sinon vous allez finir par écrire une fonction mkdir qui fait exactement la même chose.
OriginalL'auteur Robert
mkdir besoins de l'abstrait chemin, non pas le chemin d'accès relatif. essayez d'utiliser...
... par exemple.
De Java DOC:
OriginalL'auteur cristi
Dans votre cas, vous pouvez faire usage de makedirectories méthode dans
File
classe.Ici makedirectories méthode permet de créer tous les répertoires qui sont manquants dans le chemin où le fichier objet à représenter.
De Source et de référence ci-dessous (expliqué en détail).
http://www.flowerbrackets.com/create-directory-java-program/
https://docs.oracle.com/javase/6/docs/api/java/io/File.html#canWrite%28%29
OriginalL'auteur Shiva