Skip to content

Latest commit

 

History

History
53 lines (42 loc) · 1.12 KB

statement.md

File metadata and controls

53 lines (42 loc) · 1.12 KB
// { autofold
import static java.nio.file.StandardOpenOption.APPEND;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Arrays;
import java.util.List;

public class Main {

public static void main(String[] args) throws Exception {

// }

Path file = Paths.get("file.txt");

// Method 1: small files: write raw bytes
byte[] bytes = "1st line\n".getBytes();
Files.write(file, bytes);

// Method 2: small files: write lines
List<String> lines = Arrays.asList(
    "2nd line",
    "3rd line",
    "4th line"
);
Files.write(file, lines, APPEND); // UTF8 by default

// Method 3: big files: write text
try (BufferedWriter writer = Files.newBufferedWriter(file, APPEND)) {
    String line = "5th line";
    writer.write(line, 0, line.length());
    writer.newLine();
}

//{ autofold
    try (BufferedReader reader = Files.newBufferedReader(file)) {
        String line = null;
        while ((line = reader.readLine()) != null) {
            System.out.println(line);
        }
    }
}

}
//}