当前位置:网站首页>Un aperçu des flux d'E / s et des opérations de fichiers de classe de fichiers
Un aperçu des flux d'E / s et des opérations de fichiers de classe de fichiers
2022-04-23 03:25:00 【Tangable22】
Table des matières
I/OPrincipe du flux et classification du flux
I/OPrincipes
- I/O- Oui.InputEtOutputAbréviation de,I/OLa technologie est très pratique,Pour le traitement des transferts de données(Par exemple::Lire/Écrire des fichiers,Communication réseau)
- JavaEn cours de programmation,Pour l'entrée des données/L'opération de sortie est
Flow(stream)
De la façon dont- java.ioUne variété de
Flow(stream)
Classes et interfaces,Pour obtenir différents types de données,Et d'entrer et de sortir les données par la méthode.- Flux de fichiers:Le fichier fonctionne comme un flux dans le programme
Flux d'entrée:Données de la source de données(Documentation)Au programme(Mémoire)Chemin vers
Flux de sortie:Données du programme(Mémoire)à la source de données(Documentation)Chemin vers
I/OClassification des flux
- Divisé en unités de données opérationnelles:Flux d'octets(Binaires)、Flux de caractères(Fichier texte)
- Divisé en flux de données:Flux d'entrée、Flux de sortie
- Les rôles sont divisés en flux:Flux nodal、Flux de traitement
Classe de base abstraite | Flux d'octets | Flux de caractères |
---|---|---|
Flux d'entrée | InputStream | Reader |
Flux de sortie | OutputStream | Writer |
️I/OL'architecture de
️Documentation(File)
Concept
- Qu'est - ce qu'un fichier?
Documentation, Ce n'est pas nouveau pour nous ,Le fichier est l'endroit où les données sont sauvegardées,Par exemple,wordDocumentation、txtTexte、excelDocumentation、Photos、Vidéo…Attendez, ce sont des papiers., Gestion des données sur disque en fichiers dans le système d'exploitation . Du point de vue du stockage des données , Tous les documents sont essentiellement les mêmes , .Tout est composé d'octets et en fin de compte tout est 0-1Chaîne de bits.
- Dossiers(Table des matières)
Si plusieurs fichiers ne sont pas classés ensemble , L'utilisateur est très gênant à utiliser ,Donc,, Le répertoire arborescent a été introduit ( Aussi appelé dossier )Mécanisme, Les fichiers peuvent être placés dans différents dossiers , Les dossiers peuvent également être imbriqués , Cela facilite la gestion et l'utilisation des fichiers .
️Opérations courantes(FileCatégorie)
- Créer des constructeurs et des méthodes liés aux objets de fichiers
new File(String pathname);//Construire unFileObjet
new File(File parent,String child);//Selon le fichier du répertoire parent+Construction de sous - Chemins
new File(String parent,String child);//Selon le chemin du répertoire parent+Construction de sous - Chemins
createNewFile();//Créer un nouveau fichier
InESous le disque, Créer un fichier comme ci - dessus test01.txt\test02.txt\test03.txt
import java.io.File;
import java.io.IOException;
public class FileCreate {
public static void main(String[] args) throws IOException {
//Comment1
String pathname = "e:\\test01.txt";
File file1 = new File(pathname);
file1.createNewFile();
//Comment2
File parentfile = new File("e:\\");
String child2 = "test02.txt";
File file2 = new File(parentfile, child2);
file2.createNewFile();
//Comment3
String parent = "e:\\";
String child3 = "test03.txt";
File file3 = new File(parent, child3);
file3.createNewFile();
}
}
- Obtenir des informations sur le fichier
get.getName();//Obtenir le nom du fichier
canRead();//Si le fichier est lisible
canWrite();//Si le fichier est lisible
getAbsoultePath();//Obtenir le chemin absolu du fichier
getPath();//Chemin relatif
getParent();//Obtenir le répertoire parent du fichier
lenth();//Taille du fichier(Octets)
exists();//Déterminer si le document existe
isFile();//Juger si c'est un document
isDirectory();//Déterminer si c'est un répertoire
import java.io.File;
public class FileInfomation {
public static void main(String[] args) {
//Créer un objet de fichier
File file = new File("e:\\test01.txt");
System.out.println("Nom du fichier:" + file.getName());
System.out.println("Si le fichier est lisible:" + file.canRead());
System.out.println("Si le fichier est lisible:" + file.canWrite());
System.out.println("Chemin absolu du fichier:" + file.getAbsolutePath());
System.out.println("Taille du fichier(Octets):" + file.length());
System.out.println("Le fichier existe - t - il?:" + file.exists());
System.out.println("C'est un fichier:" + file.isFile());
System.out.println("N'est - ce pas un répertoire:" + file.isDirectory());
}
}
- Comparaison des documents
File f1=new File("D:\\test1.txt");
File f2=new File("D:\\test2.txt");
f1==f2;//Comparez les adresses des deux objets
f1.equals(f2);// Comparer les chemins des fichiers correspondant aux deux objets
- Opérations de répertoire et suppression de fichiers
mkdir();//Créer un répertoire à un seul niveau
mkdirs();//Créer un répertoire à plusieurs niveaux
delete();//Supprimer le répertoire( Ce répertoire de niveau doit être vide ,Pas de contenu)
- Voir le répertoire des fichiers
list();//Renvoie un tableau de chaînes,Nommez les fichiers et répertoires dans les répertoires représentés par ce Pathname abstrait.
listFiles();//Renvoie un tableau abstrait de noms de chemin,Représente un fichier dans un répertoire représenté par ce Pathname abstrait.
Liste des cas: Parcourir l'impression de tous les fichiers dans un répertoire
public class PrintFile {
public static void main(String[] args) {
//Créer un objet de fichier
File file = new File("e:\\Test");
String[] list = file.list();// Répertoire sous le dossier / Un tableau de noms correspondant aux fichiers
for (String s : list) {
System.out.println(s);
}
File[] files = file.listFiles();
for (File f : files) {
System.out.println(f.getName() + "," + f.getAbsolutePath());
}
}
}
Parcourir le Répertoire
1. Compte tenu d'un objet de fichier file
2.listFiles() Obtient tous les tableaux d'objets de fichiers sous ce fichier
3.TraverséeFileTableau d'objets,Si c'est un catalogue, Appelle Récursivement la méthode pour obtenir tous les objets de fichier sous ce répertoire ;Si c'est un document, Imprimer le chemin de sortie +Nom
import java.io.File;
public class PrintFile {
public static void main(String[] args) {
File file = new File("E:\\Code");
getAllFile(file);
}
public static void getAllFile(File file) {
// Obtenir tous les FileTableau d'objets
File[] files = file.listFiles();
//Commencez à traverser
if (files != null) {
for (File f : files) {
if (f.isDirectory()) {
//Déterminer s'il s'agit d'un répertoire,Si oui,Récursion des appels
getAllFile(f);
} else {
//Non, pas du tout., Imprimer le chemin +Nom du fichier
System.out.println(f.getAbsoluteFile() + "En bas:" + f.getName());
}
}
}
}
}
版权声明
本文为[Tangable22]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/04/202204230322316599.html
边栏推荐
- Supersocket is Use in net5 - startup
- 2022 P cylinder filling training test questions and simulation test
- js递归树结构计算每个节点的叶子节点的数量并且输出
- Configuration table and page information automatically generate curd operation page
- 月薪10k-20k都无法回答的事务问题,你会吗?
- oracle 查询外键含有逗号分隔的数据
- Problem C: Hanoi Tower III
- 研讨会回放视频:如何提升Jenkins能力,使其成为真正的DevOps平台
- [mock data] fastmock dynamically returns the mock content according to the incoming parameters
- 全新的ORM框架——BeetlSQL介绍
猜你喜欢
Knowledge of software testing~
2022 团体程序设计天梯赛 模拟赛 1-8 均是素数 (20 分)
2022 group programming ladder simulation match 1-8 are prime numbers (20 points)
Unity knowledge points (ugui)
《C语言程序设计》(谭浩强第五版) 第7章 用函数实现模块化程序设计 习题解析与答案
MySQL keyword group_ Concat, combined connection query
Visual programming - Experiment 1
Chapter 7 of C language programming (fifth edition of Tan Haoqiang) analysis and answer of modular programming exercises with functions
. net webapi access authorization mechanism and process design (header token + redis)
Supersocket is Use in net5 - concept
随机推荐
. NETCORE sets the API post mode, which can accept parameters directly in parentheses
《C语言程序设计》(谭浩强第五版) 第7章 用函数实现模块化程序设计 习题解析与答案
MySQL keyword group_ Concat, combined connection query
Query stored procedures in PostgreSQL
File upload vulnerability summary and upload labs shooting range documentary
ThreadLocal 测试多线程变量实例
poi根据数据创建导出excel
2022 Shandong Province safety officer C certificate work certificate question bank and online simulation examination
打卡:4.23 C语言篇 -(1)初识C语言 - (12)结构体
Idempotency practice operation, explaining idempotency based on business
Super easy to use asynchronous export function of Excel
[vs Code] solve the problem that the jupyter file displays exceptions in vs code
oracle 查询外键含有逗号分隔的数据
Supersocket is Used in net5 - command
Learn about I / O flow and file operations
二进制文件版本控制工具选择难?看完这篇你会找到答案
JS, bind the event for a label with input, and then bind the stand-alone event in the parent element. The event is executed twice and solved
Explication détaillée des fonctions send () et recv () du programme Socket
Unity knowledge points (ugui 2)
Fiddler use