Yanıtlar:
Bunu yapmanın en iyi yolu:
String path = "C:" + File.separator + "hello" + File.separator + "hi.txt";
// Use relative path for Unix systems
File f = new File(path);
f.getParentFile().mkdirs();
f.createNewFile();
new File("/a/b/test.txt")
Her iki sistem için de eserleri kullanma . Windows'da, JVM'nin çalıştığı diskle aynı diske yazılır.
f.getParentFile().mkdirs(); f.createNewFile();
Yazmadan önce üst dizinlerin var olduğundan emin olmalısınız. Bunu ile yapabilirsiniz File#mkdirs()
.
File f = new File("C:/a/b/test.txt");
f.getParentFile().mkdirs();
// ...
İle Java 7 kullanabileceğiniz Path
, Paths
ve Files
:
import java.io.IOException;
import java.nio.file.FileAlreadyExistsException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
public class CreateFile {
public static void main(String[] args) throws IOException {
Path path = Paths.get("/tmp/foo/bar.txt");
Files.createDirectories(path.getParent());
try {
Files.createFile(path);
} catch (FileAlreadyExistsException e) {
System.err.println("already exists: " + e.getMessage());
}
}
}
kullanın:
File f = new File("C:\\a\\b\\test.txt");
f.mkdirs();
f.createNewFile();
Windows Dosya Sistemi'ndeki yollar için eğik çizgileri çift eğik çizgi olarak değiştirdiğime dikkat edin. Bu, belirtilen yolda boş bir dosya oluşturur.
createNewFile()
Birlikte kendisine yazarken gereksiz şekilde gereğidir FileOutputStream
zaten.
String path = "C:"+File.separator+"hello";
String fname= path+File.separator+"abc.txt";
File f = new File(path);
File f1 = new File(fname);
f.mkdirs() ;
try {
f1.createNewFile();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
Bu, bir dizin içinde yeni bir dosya oluşturmalıdır
Belirtilen Yolda Yeni Dosya Oluştur
import java.io.File;
import java.io.IOException;
public class CreateNewFile {
public static void main(String[] args) {
try {
File file = new File("d:/sampleFile.txt");
if(file.createNewFile())
System.out.println("File creation successfull");
else
System.out.println("Error while creating File, file already exists in specified path");
}
catch(IOException io) {
io.printStackTrace();
}
}
}
Program Çıkışı:
Dosya oluşturma başarılı
Şaşırtıcı bir şekilde, cevapların çoğu tam çalışma kodu vermez. İşte burada:
public static void createFile(String fullPath) throws IOException {
File file = new File(fullPath);
file.getParentFile().mkdirs();
file.createNewFile();
}
public static void main(String [] args) throws Exception {
String path = "C:/donkey/bray.txt";
createFile(path);
}
Bir dosya oluşturmak ve buraya bir dize yazmak için:
BufferedWriter bufferedWriter = Files.newBufferedWriter(Paths.get("Path to your file"));
bufferedWriter.write("Some string"); // to write some data
// bufferedWriter.write(""); // for empty file
bufferedWriter.close();
Mac ve PC için çalışır.
FileOutputStream öğesini kullanmak için şunu deneyin:
public class Main01{
public static void main(String[] args) throws FileNotFoundException{
FileOutputStream f = new FileOutputStream("file.txt");
PrintStream p = new PrintStream(f);
p.println("George.........");
p.println("Alain..........");
p.println("Gerard.........");
p.close();
f.close();
}
}