


Techniques et applications de lecture et d'écriture de fichiers implémentées en Java
Java est un langage de programmation de haut niveau doté de fonctions de lecture et d'écriture de fichiers très puissantes. Dans cet article, nous présenterons les techniques et applications de lecture et d’écriture de fichiers Java.
1. Bases de la lecture et de l'écriture de fichiers Java
1.1 Lecture de fichiers
La méthode la plus couramment utilisée pour lire des fichiers en Java consiste à utiliser le Classe BufferedReader. Voici un exemple simple :
try{ BufferedReader br = new BufferedReader(new FileReader("input.txt")); String line; while ((line = br.readLine()) != null) { System.out.println(line); } } catch(IOException e){ e.printStackTrace(); }
Dans ce code, nous créons d'abord un objet BufferedReader, qui lit le fichier input.txt à l'aide de la classe FileReader. Nous lisons ensuite chaque ligne du fichier et l'imprimons sur la console.
1.2 Écriture de fichiers
La manière la plus courante d'écrire des fichiers en Java est d'utiliser la classe PrintWriter. Voici un exemple simple :
try{ PrintWriter pw = new PrintWriter("output.txt"); pw.println("Hello, world!"); pw.close(); } catch(IOException e){ e.printStackTrace(); }
Dans ce code, nous créons d'abord un objet PrintWriter, qui écrira la sortie dans le fichier output.txt. Ensuite, nous écrivons une ligne de chaîne "Hello, world!" dans le fichier et fermons enfin l'objet PrintWriter.
1.3 Lecture et écriture de fichiers binaires
En plus des fichiers texte, Java peut également lire et écrire des fichiers binaires. Voici un exemple simple :
try{ FileInputStream fis = new FileInputStream("input.bin"); int data = fis.read(); while (data != -1) { System.out.println(data); data = fis.read(); } fis.close(); } catch(IOException e){ e.printStackTrace(); }
Dans ce code, nous créons d'abord un objet FileInputStream, qui ouvre le fichier input.bin en mode binaire. Nous lisons ensuite les données du fichier octet par octet et les imprimons sur la console. Enfin, nous fermons l'objet FileInputStream.
2. Compétences en lecture et en écriture de fichiers Java
2.1 Encodage des caractères de fichier
Lors du traitement de fichiers texte en Java, vous devez accorder une attention particulière à l'encodage des caractères du fichier. Si le codage du fichier n'est pas le codage UTF-8 par défaut de Java, vous devez utiliser un encodeur approprié pour lire ou écrire le fichier. Voici un exemple de lecture d'un fichier encodé en UTF-16 :
try{ BufferedReader br = new BufferedReader(new InputStreamReader( new FileInputStream("input.txt"), "UTF-16")); String line; while ((line = br.readLine()) != null) { System.out.println(line); } br.close(); } catch(IOException e){ e.printStackTrace(); }
Dans ce code, nous lisons input.txt en convertissant l'objet FileInputStream en un objet InputStreamReader et en spécifiant le document de l'encodeur UTF-16. Il est important de noter que la lecture d'un fichier texte à l'aide d'un encodeur incorrect peut produire des caractères étranges ou des erreurs d'encodage, alors faites attention à l'encodage du fichier.
2.2 Lecture et écriture de fichiers volumineux
Vous devez accorder une attention particulière à l'utilisation de la mémoire lors du traitement de fichiers volumineux. Si vous lisez l'intégralité du fichier en mémoire en une seule fois, vous risquez de provoquer une fuite de mémoire ou un crash du programme. Vous pouvez donc utiliser Java NIO (New I/O) pour lire des fichiers volumineux ligne par ligne. Voici un exemple de lecture d'un fichier volumineux :
try{ RandomAccessFile raf = new RandomAccessFile("input.txt", "r"); FileChannel fc = raf.getChannel(); ByteBuffer buf = ByteBuffer.allocate(1024); while (fc.read(buf) != -1) { buf.flip(); byte[] bytes = new byte[buf.limit()]; buf.get(bytes); System.out.print(new String(bytes, Charset.forName("UTF-8"))); buf.clear(); } fc.close(); raf.close(); } catch(IOException e){ e.printStackTrace(); }
Dans ce code, nous créons d'abord un objet RandomAccessFile et utilisons l'objet RandomAccessFile pour créer un objet FileChannel. Ensuite, nous créons un objet ByteBuffer d'une taille de 1024 octets. Ensuite, nous utilisons l'objet FileChannel pour lire les données dans l'objet ByteBuffer, utilisons l'objet ByteBuffer pour convertir les données en un tableau d'octets et utilisons l'encodeur UTF-8 pour convertir le tableau d'octets en chaîne. Enfin, nous effaçons l'objet ByteBuffer afin de pouvoir lire les données la prochaine fois.
2.3 Écriture de fichiers volumineux
Lorsque vous traitez des fichiers volumineux, vous devez également accorder une attention particulière à la division du fichier en tailles appropriées et à l'écriture ligne par ligne. Voici un exemple d'écriture d'un fichier volumineux :
try{ PrintWriter pw = new PrintWriter(new File("output.txt")); for (int i = 0; i < 1000000; i++) { pw.println("Line #" + i); if (i % 10000 == 0) { pw.flush(); } } pw.close(); } catch(IOException e){ e.printStackTrace(); }
Dans ce code, nous créons d'abord un objet PrintWriter, qui écrira la sortie dans le fichier output.txt. Ensuite, nous écrivons 1 000 000 de lignes de données dans une boucle et vidons le tampon toutes les 10 000 lignes pour écrire les données sur le disque. Enfin, nous fermons l'objet PrintWriter.
3. Application de lecture et d'écriture de fichiers Java
3.1 Copie de fichiers
L'une des applications les plus couramment utilisées pour la fonction de lecture et d'écriture de fichiers Java est copie de fichiers. Voici un exemple simple de copie de fichier :
try{ FileInputStream fis = new FileInputStream("input.txt"); FileOutputStream fos = new FileOutputStream("output.txt"); byte[] buffer = new byte[1024]; int count; while ((count = fis.read(buffer)) != -1) { fos.write(buffer, 0, count); } fis.close(); fos.close(); } catch(IOException e){ e.printStackTrace(); }
Dans ce code, nous créons d'abord un objet FileInputStream pour lire le fichier input.txt. Ensuite, nous avons créé un objet FileOutputStream pour écrire des données dans le fichier output.txt. Ensuite, nous créons un tampon de tableau d'octets pour copier le fichier bloc par bloc. Enfin, nous parcourons chaque élément de données du fichier et l'écrivons dans le fichier de sortie.
3.2 Calcul de la valeur de hachage du fichier
La fonction de lecture et d'écriture de fichier Java peut également être utilisée pour calculer la valeur de hachage (Hash) du fichier. Voici un exemple de calcul de la valeur de hachage du fichier :
try{ MessageDigest md = MessageDigest.getInstance("SHA-256"); FileInputStream fis = new FileInputStream("input.txt"); byte[] buffer = new byte[1024]; int count; while ((count = fis.read(buffer)) != -1) { md.update(buffer, 0, count); } fis.close(); byte[] digest = md.digest(); System.out.println(DatatypeConverter.printHexBinary(digest)); } catch(IOException | NoSuchAlgorithmException e){ e.printStackTrace(); }
Dans ce code, nous créons d'abord un objet MessageDigest et utilisons l'algorithme de cryptage SHA-256. Ensuite, nous avons créé un objet FileInputStream pour lire le fichier input.txt. Ensuite, nous créons un tampon de tableau d'octets, parcourons chaque élément de données du fichier et le mettons à jour dans l'objet MessageDigest. Enfin, nous fermons l'objet FileInputStream et utilisons l'objet MessageDigest pour calculer la valeur de hachage du fichier et afficher le résultat du calcul sur la console sous la forme d'une chaîne hexadécimale.
Conclusion
Les fonctions de lecture et d'écriture de fichiers Java sont très puissantes. Les développeurs peuvent utiliser de manière flexible diverses techniques pour gérer différents besoins de lecture et d'écriture, tels que le traitement de l'encodage de fichiers et la lecture de fichiers volumineux. et l'écriture, la copie de fichiers et le calcul de la valeur de hachage, etc. Par conséquent, la maîtrise des compétences et des applications en lecture et en écriture de fichiers Java peut contribuer à améliorer l’efficacité du développement et la qualité du code.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Algorithmes d'extraction de mots-clés et exemples d'applications implémentés en Java Avec l'avènement de l'ère Internet, les données textuelles massives ont causé de grandes difficultés à obtenir et à analyser. Par conséquent, il est nécessaire de mener des recherches et d'appliquer des technologies de traitement du langage naturel telles que l'extraction de mots-clés. . L'extraction de mots clés fait référence à l'extraction de mots ou d'expressions d'un morceau de texte qui représentent le mieux le sujet du texte, fournissant ainsi une prise en charge de tâches telles que la classification, la récupération et le regroupement de texte. Cet article présente plusieurs algorithmes d'extraction de mots clés et des exemples d'applications implémentés en Java. 1. Algorithme TF-IDF TF-IDF est un

Redis est une base de données de stockage clé-valeur haute performance basée sur la mémoire. Elle prend non seulement en charge le stockage des paires clé-valeur, mais prend également en charge certaines structures de données complexes, telles que List, Set, SortedSet et Hash. La structure de données List est très adaptée comme structure de données pour les files d'attente asynchrones car elle prend en charge l'insertion et la suppression d'éléments aux deux extrémités. Cet article explique comment utiliser Redis pour implémenter des files d'attente asynchrones et donne un exemple d'application. 1. Comment Redis implémente la file d'attente asynchrone Lis dans Redis

En tant que base de données en mémoire hautes performances, Redis est largement utilisé dans les systèmes distribués. Parmi eux, en tant que composants importants des systèmes distribués, les files d'attente distribuées sont sans aucun doute très importantes. Cet article se concentrera sur les caractéristiques distribuées de Redis et présentera les méthodes et exemples d'application de Redis pour implémenter des files d'attente distribuées. 1. Fonctionnalités distribuées de Redis En tant que base de données en mémoire, Redis offre d'excellentes performances en matière de mise en cache, de persistance et d'autres aspects. Dans les systèmes distribués, Redis possède également une fonctionnalité très importante, à savoir Re

Méthodes Redis et exemples d'application pour la mise en œuvre de la coordination distribuée Dans les systèmes distribués, la coordination entre les nœuds est un problème clé. Les solutions traditionnelles utilisent généralement un nœud central pour coordonner d'autres nœuds, mais cela entraînera des problèmes tels que des points de défaillance uniques et des goulots d'étranglement en termes de performances. Ces dernières années, Redis, en tant que base de données en mémoire hautes performances, a été de plus en plus utilisée. Dans Redis, sa structure de données et son ensemble de commandes peuvent être utilisés pour implémenter des fonctions de coordination distribuées, obtenant ainsi un système distribué hautement disponible et hautes performances. Cet article présentera Re

Exemples d'application de la technologie CanvasJS : cinq cas à connaître Introduction : L'émergence du HTML5 a apporté de nouvelles possibilités au développement Web, en particulier l'élément Canvas, qui offre un moyen puissant de dessiner des graphiques et des animations sur la page. En combinaison avec la puissance de JavaScript, les développeurs peuvent utiliser Canvas pour obtenir une variété d'effets et d'interactions intéressants et améliorer l'expérience utilisateur. Cet article présentera cinq exemples d'applications CanvasJS étonnants et fournira des

Exemples d'application de Redis dans la visualisation de données Ces dernières années, la visualisation de données est devenue l'un des maillons importants de l'analyse des données et de la prise de décision. Grâce aux outils de visualisation, les analystes de données et les décideurs peuvent comprendre la situation des données de manière plus claire et intuitive, afin de prendre de meilleures décisions. Les défis posés par le Big Data nous incitent également à continuer d’explorer et d’innover dans le domaine de la visualisation des données. Cet article présentera les exemples d'application de Redis dans la visualisation de données. Grâce à ces exemples, nous pouvons mieux comprendre l'écologie et la valeur de Redis dans la visualisation de données.

Exemples d'application de Redis dans les systèmes de recommandation Avec le développement d'Internet et la croissance explosive de l'information, la surcharge d'informations est devenue un problème majeur affectant l'accès des personnes à l'information. Par conséquent, le système de recommandation est apparu au fur et à mesure que les temps l'exigent. Il peut prédire le comportement des utilisateurs grâce à des algorithmes et fournir des services de recommandation personnalisés, ce qui améliore considérablement l'expérience utilisateur et les bénéfices des produits. La mise en œuvre du système de recommandation nécessite une grande quantité de stockage, de traitement et de calcul de données, et Redis est une excellente solution. Redis est une base de données NoSQL hautes performances,

PHP est un langage de programmation très flexible avec une large gamme d'applications. Dans le développement PHP, afin d'éviter les conflits de noms et d'améliorer la lisibilité et la maintenabilité du code, PHP introduit le concept d'espace de noms. Les espaces de noms aident les développeurs à utiliser le même nom de classe ou de fonction dans le même projet sans conflit. Cet article expliquera comment configurer les espaces de noms en PHP et des exemples d'applications courantes. 1. Comment configurer l'espace de noms PHP. Déclarez l'espace de noms en PHP en utilisant Namespa en haut du fichier.
