2017-12-15 2 views
1
java.nio.file.Path newfile = FileSystems.getDefault().getPath("/home/krishnaprasad/report.json"); 
    Set<PosixFilePermission> perms = PosixFilePermissions.fromString("rw-------"); 
    FileAttribute<Set<PosixFilePermission>> attrs = PosixFilePermissions.asFileAttribute(perms); 
    if(!Files.exists(newfile)) { 
     Files.createFile(newfile, attrs); 
    } 

    Files.write(newfile, jsonarr.toString().getBytes(), StandardOpenOption.APPEND); 

Ich füge das JSONArray an die Datei an. Es hängt in der gleichen Zeile an. Kann ich es in der nächsten Zeile anhängen?Wie schreibt man Daten in eine neue Zeile mit Files.createFile()?

+0

Sie dies nicht tun. 'Files.createNewFile()' führt keine Ausgabe durch, und tatsächlich sind sowohl die Aufrufe 'exists()' als auch 'createNewFile()' hier völlig sinnlos und verschwenderisch. – EJP

+0

Jede andere Art, wie wir damit umgehen können? –

Antwort

2

Fügen Sie einfach eine neue Zeile vor dem JSON:

String content = System.lineSeparator() + jsonarr; 

Files.write(newfile, content.getBytes(StandardCharsets.UTF_8), 
     StandardOpenOption.APPEND); 
Verwandte Themen