IT이야기

java 디렉토리에 파일을 작성하려면 어떻게 해야 합니까?

cyworld 2022. 7. 23. 09:42
반응형

java 디렉토리에 파일을 작성하려면 어떻게 해야 합니까?

파일을 작성하려면C:/a/b/test.txt, 다음과 같은 작업을 수행할 수 있습니다.

File f = new File("C:/a/b/test.txt");

또, 사용하고 싶다.FileOutputStream파일을 만듭니다.그럼 어떻게 해야 하죠?어떤 이유로 파일이 올바른 디렉토리에 생성되지 않습니다.

가장 좋은 방법은 다음과 같습니다.

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

쓰기 전에 부모 디렉토리가 존재하는지 확인해야 합니다.이 조작은, 에 의해서 실시할 수 있습니다.

File f = new File("C:/a/b/test.txt");
f.getParentFile().mkdirs();
// ...

Java 7에서는 , 및 을 사용할 수 있습니다.

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

용도:

File f = new File("C:\\a\\b\\test.txt");
f.mkdirs();
f.createNewFile();

Windows File System에서 경로의 슬래시를 더블백 슬래시로 변경했습니다.그러면 지정된 경로에 빈 파일이 생성됩니다.

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

디렉토리내에 새로운 파일이 작성됩니다.

이를 위한 보다 간단하고 좋은 방법:

File f = new File("C:/a/b/test.txt");
if(!f.exists()){
   f.createNewFile();
}

원천

지정된 경로에 새 파일 생성

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

}

프로그램 출력:

파일 생성 성공

놀랍게도, 많은 답변이 완전한 작동 코드를 제공하지 않습니다.여기 있습니다.

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

파일을 만들고 여기에 문자열을 쓰려면:

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 및 PC에서 사용할 수 있습니다.

FileOutputStream을 사용하는 경우 다음을 수행합니다.

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

파일 출력 스트림을 통해 파일에 쓰면 파일이 자동으로 생성됩니다. 단, 필요한 디렉토리(폴더)가 모두 생성되었는지 확인하십시오.

    String absolutePath = ...
    try{
       File file = new File(absolutePath);
       file.mkdirs() ;
       //all parent folders are created
       //now the file will be created when you start writing to it via FileOutputStream.
      }catch (Exception e){
        System.out.println("Error : "+ e.getmessage());
       }

자바에서는 다양한 사전 정의된 방법을 사용하여 파일을 작성할 수 있습니다.이 방법에 대해 하나씩 논의해 봅시다.

방법 1 : java.io을 사용하여 파일을 만듭니다.파일 클래스

파일 클래스의 createNewFile() 메서드를 사용하여 파일을 만들 수 있습니다.

public class CreateFileJavaExamples {
    public static void main(String[] args) {
        File file = new File("C://java_//newFile.txt");
        try {
            if (file.createNewFile()) {
                System.out.println("File create");
            } else {
                System.out.println("File already exists!");
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

방법 2 : java.io 를 사용하여 파일을 만듭니다.파일 출력 스트림

이 예에서는 FileOutputStream을 사용하여 파일을 만들 수 있습니다.

public class CreateFileJavaExamples2 {
    
    public static void main(String[] args) {
         try {
                new FileOutputStream("C://java_examples//newFile1.txt", true);
                System.out.println("file created successfully");
            } catch (Exception e) {
                e.printStackTrace();
            }
    }
}

java.nio 패키지로 파일을 작성할 수도 있습니다.

출처 : Java에서 파일을 작성하는 방법

언급URL : https://stackoverflow.com/questions/6142901/how-to-create-a-file-in-a-directory-in-java

반응형