J'ai le code suivant pour lire à partir d'un CSV :
InputStream inp = getClass().getResourceAsStream(filename);
InputStreamReader r = new InputStreamReader(inp);
BufferedReader reader = new BufferedReader(r);
Sur les réponses aux questions : Lecteur tampon de Java , Convertir un InputStream en BufferedReader , Quelle est la différence entre les classes BufferedReader et InputStreamReader de Java ?
BufferedReader [BR] et InputStreamReader [ISR] implémentent tous deux les mêmes interfaces. BR possède toutes les méthodes que ISR possède avec les méthodes supplémentaires incluant la toujours si utile méthode readLine() et la moins utile mais toujours pertinente méthode skip(). Vous n'avez pas nécessairement besoin de BR pour lire des caractères uniques, bien que BR puisse faire la même chose plus efficacement que ISR à cet égard. La seule différence significative est que FileReader est une sous-classe de ISR mais pas de BR, bien que j'ai eu des sources sur ce site web disant que FileReader n'est plus vraiment utilisé en raison des alternatives.
D'après mes recherches, tout ce que l'ISR peut faire est mieux fait par le BR. Je suis un jeune développeur, donc chaque classe définie ou importée me semble pertinente. Ce que j'essaie de comprendre, c'est si certaines classes ne sont plus utilisées, de nouvelles versions ou de nouveaux frameworks les remplaçant. Je veux savoir ce que les développeurs plus expérimentés ont à dire. Alors, y a-t-il une raison de ne pas utiliser le BR lorsqu'on utilise l'ISR ?
Liens rapides vers l'API :
BufferedReader
InputStreamReader