Сохранить файл по определенному пути - PullRequest
0 голосов
/ 28 октября 2018

У меня есть текущий код:

    public void crearArchivo(String nombre) {
        archivo = new File(nombre.replaceAll("\\s", "") + ".txt");
        if (!archivo.exists()) {
            try {
            archivo.createNewFile();
                } catch (Exception e) {
                  e.printStackTrace();
        }
    }

}

public void crearCarpeta(String nombreCarpeta){
    File directorio = new File(nombreCarpeta);
    directorio.mkdir();

}

public void crearArchivoDatos(String nombreArchivo, ArrayList<String>datos) {
    crearArchivo(nombreArchivo);
    try {
        BufferedWriter bw = new BufferedWriter(new FileWriter(archivo));

        for (int i = 0; i < datos.size(); i++) {
            bw.write(datos.get(i));
        }
        bw.close();
    } catch (Exception e) {
        //e.printStackTrace();
    }

}

первый метод создает файл, только если он не существует, а второй создает папку, наконец, третий метод сохраняет данные, моя проблема в том, что я хочу сохранить некоторые файлы в папке, которую я создал первым, как я могу задать путь чтобы сохранить эти файлы там, также у меня есть проблема, что эта маленькая программа будет выполняться на разных компьютерах, поэтому путь будет меняться для любого компьютера

Ответы [ 2 ]

0 голосов
/ 28 октября 2018

Создание или изменение файлов в Java могут быть выполнены с помощью методов Java 8 NIO.2.Вот ссылка на документацию Oracle: https://docs.oracle.com/javase/tutorial/essential/io/fileio.html

Для вашего вопроса вы должны объявить относительный путь, поэтому он будет зависеть от компьютера, на котором будет выполняться, а не от абсолютного пути,которые начинаются в корне файловой системы.

0 голосов
/ 28 октября 2018

Вы можете получить пути к папкам на любом компьютере, используя System.getProperty(...) - например, System.getProperty("user.home") дает вам текущий каталог пользователя (из которого вы можете получить доступ к рабочему столу и другим папкам), а System.getProperty("user.dir") дает вам путьпапки, из которой выполняется ваша программа.

...