Streams koppelen
Je bedrijf heeft databestanden met verschillende tekencoderingen. Om de verwerking te standaardiseren, heeft je manager je gevraagd een bestandslezer te maken die expliciet UTF-8-codering gebruikt. Dit vereist het koppelen van meerdere streams—een kernconcept in Java I/O.
De klassen BufferedReader, InputStreamReader, FileInputStream en StandardCharsets zijn alvast voor je geïmporteerd.
Deze oefening maakt deel uit van de cursus
Data importeren in Java
Oefeninstructies
- Koppel een
BufferedReaderaan eenInputStreamReaderen die weer aan eenFileInputStream. - Lees en print de eerste regel uit het bestand.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
public class StreamChainingExample {
public static void main(String[] args) {
String filePath = "sample_market_data.csv";
// Chain three stream classes together
try (
BufferedReader reader = new ____(
new ____(
new ____(filePath),
StandardCharsets.UTF_8
)
)
) {
// Read and print the first line
String firstLine = reader.____();
System.out.println("First line (UTF-8): " + ____);
System.out.println("Successfully read using chained streams");
} catch (IOException e) {
System.err.println("Error: " + e.getMessage());
}
}
}