Сохранить в другом каталоге JAVA - Очень простой вопрос! - PullRequest
1 голос
/ 07 марта 2011

Я получил папку с именем DIR и подпапку с именем SUB.java-файл, который я запускаю, помещен в папку DIR, и теперь я хочу сохранить свою маленькую строку в файле .txt в папке SUB.

Не могли бы вы мне помочь?

Ответы [ 2 ]

5 голосов
/ 07 марта 2011
PrintWriter out = new PrintWriter(
    new OutputStreamWriter(
       new FileOutputStream("SUB/myfile.txt")));
out.println("simpleString);
out.close();

Эта простая задача кажется очень сложной в Java.Причина в том, что вы можете настроить все на пути от строки до файла.Например, вы можете указать кодировку выходного файла, которая по умолчанию является кодировкой платформы (например, «win1252» для Windows в большинстве частей западного полушария).Для записи файлов UTF-8 используйте:

PrintWriter out = new PrintWriter(
    new OutputStreamWriter(
        new FileOutputStream("SUB/myfile.txt"),"UTF-8"));
out.println("simpleString);
out.close();

PrintWriter также имеет опцию «немедленная очистка», что хорошо для файлов журналов, которые вы хотите отслеживать в фоновом режиме.Конструкторы ввода-вывода также могут повысить производительность при использовании BufferedWriter, поскольку он сбрасывается только на диск, при достижении минимального размера или при закрытии потока.

PrintWriter out = new PrintWriter(
   new BufferedWriter(
       new OutputStreamWriter(
           new FileOutputStream("SUB/myfile.txt"),"UTF-8")));
out.println("simpleString);
out.close();

При необходимости создания FileOutputStreamвы указываете, что вывод должен идти на диск, но вы также можете использовать любое другое место для разбивки, например, массив:

byte[] bytes = new byte[4096];
OutputStream bout = new ByteArrayOutputStream(bout);
PrintWriter out = new PrintWriter(
    new OutputStreamWriter(bout,"UTF-8"));
out.println("simpleString);
out.close();

Вам понравится универсальность Javas!

2 голосов
/ 07 марта 2011

Apache org.apache.commons.io.FileUtils класс реализован для уменьшения количества шаблонного кода ..

FileUtils.writeStringToFile(new File("SUB/textFile.txt"),stringData,"UTF-8");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...