Добавить в существующий файл в новой строке - PullRequest
0 голосов
/ 13 мая 2011

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

private void writeIntoFile1(String str) {
    try {
        fc=(FileConnection) Connector.open("file:///SDCard/SpeedScence/MaillLog.txt");
        OutputStream os = fc.openOutputStream(fc.fileSize());
        os.write(str.getBytes());
        os.close();
        fc.close();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
}

ивызов

writeIntoFile1("aaaaaaaaa");
writeIntoFile1("bbbbbb");

Запись успешно выполняется в файл, который я смоделировал (SDCard), но появляется в той же строке.Как мне написать "bbbbbb" в новую строку?

1 Ответ

1 голос
/ 13 мая 2011

Введите символ новой строки (\n) после написания строки.

private void writeIntoFile1(String str) {
    try {
        fc = (FileConnection) Connector.open("file:///SDCard/SpeedScence/MaillLog.txt");
        OutputStream os = fc.openOutputStream(fc.fileSize());
        os.write(str.getBytes());
        os.write("\n".getBytes());
        os.close();
        fc.close();
    } catch (IOException e) {
        e.printStackTrace();
    }
}

NB a PrintStream, как правило, лучше подходит для печати текста, хотя я недостаточно знаком с BlackBerry API, чтобы знать, возможно ли использовать PrintStream совсем. С PrintStream вы просто используете println():

private void writeIntoFile1(String str) {
    try {
        fc = (FileConnection) Connector.open("file:///SDCard/SpeedScence/MaillLog.txt");
        PrintStream ps = new PrintStream(fc.openOutputStream(fc.fileSize()));
        ps.println(str.getBytes());
        ps.close();
        fc.close();
    } catch (IOException e) {
        e.printStackTrace();
    }
}
...