Kullanılabilecek yöntemler şöyle
1. Files Sınıfı
2. BufferedReader Sınıfı
3. Scanner Sınıfı
Test İçin Büyük Dosya Yaratmak
Şöyle yaparız
public void prepFile() throws IOException { BufferedWriter bufferedWriter = Files.newBufferedWriter(Path.of(TARGET_FILE), StandardOpenOption.CREATE); IntStream.rangeClosed(1,100000000) .forEach(a-> write(bufferedWriter, a)); bufferedWriter.flush(); } public void write(BufferedWriter bufferedWriter, int a) { try { bufferedWriter.write(a + "\n"); } catch (IOException e) { ... throw new RuntimeException(e); } }
1. Files Sınıfı
Örnek
Şöyle yaparız
Path filePath = Paths.get("C:/temp/file.txt") //try-with-resources try (Stream<String> lines = Files.lines( filePath )) { lines.forEach(...); // Process the line
} catch (IOException e) { ... }
2. BufferedReader Sınıfı
Bu sınıf 2 şekilde kullanılabilir.
1. lines metodu
2. readLine metodu
lines metodu
Aslında bunun yerine Files.lines() çok daha kolay
Örnek
Şöyle yaparız
public void usingBufferedReaderAndLambda() throws IOException { try (BufferedReader bufferedReader = Files.newBufferedReader(Path.of(TARGET_FILE))) { bufferedReader.lines() .forEach(...); // Process the line } }
readLine metodu
Örnek
Şöyle yaparız
public void usingBufferedReader() throws IOException {try(FileReader fileReader = new FileReader(new File(TARGET_FILE))){BufferedReader bufferedReader = new BufferedReader(fileReader);String readLine;while((readLine = bufferedReader.readLine())!=null){// Process the line}}}
3. Scanner Sınıfı
Bir örnek burada
Hiç yorum yok:
Yorum Gönder