当前位置:网站首页>[langage C] opération de fichier d'analyse approfondie [niveau avancé examen spécial]
[langage C] opération de fichier d'analyse approfondie [niveau avancé examen spécial]
2022-04-22 00:48:00 【Dream Ocean】
Précédemment dans
Cette section est entréeCLe coeur de la langue:Analyse de la profondeurCLanguesOpérations de fichiers
Ensuite, nous entrons dans un nouvel espace,Une nouvelle perspective sur le Code~
Ce qui suit vous aidera certainement àCLa langue a une compréhension subversive Oh!!!
Ce qui suit est plein de marchandises sèches,Suivez le rythme.~
Présentation de l'auteur:
Auteur: J'adore les petits gens qui ne sont pas très programmés.
De l'auteurGitee:Entrepôt de code
Série d'articles recommandés:
《Spécial sur les questions de brosse》—Réaliser le dossier d'apprentissage de Xiaobai à l'entrée🥰
【CLangues】Stockage des données en mémoire_ [Chapitre avancé_Examen spécial]
【CLangues】Gestion dynamique de la mémoire [Chapitre avancé_ Examen spécial]
C'est la première fois que j'entre dans ce merveilleux endroit, comme tout le monde.“Yuan”L'univers J'espère que tout en exportant des connaissances,,Peut également progresser avec tout le monde、Progrès illimités
Aides à la navigation
- Points saillants du présent chapitre
- Un..Documentation
- 2.. Fonction d'opération de fichier texte
- Trois.Fichiers texte et binaires
- Quatre.Détermination de la fin de la lecture du fichier
- Cinq.Tampon de fichier
- 🫓Résumé
Points saillants du présent chapitre
-
Documentation
-
Fonction d'opération de fichier texte
-
Fichiers texte et binaires
-
Cache de fichiers
Un..Documentation
Ⅰ.Pourquoi utiliser des fichiers
Avant que nous sachions C Les programmes linguistiques ne peuvent pas enregistrer les données , Lorsque le programme sort, les données disparaissent naturellement , C'est parce que les données stockées au moment de l'exécution du programme sont dans un espace temporaire , Une fois la procédure terminée , L'espace est libéré et détruit , Donc les données ne peuvent pas être sauvegardées
Si nous voulons maintenir les données ,Qu'est - ce qu'on va faire
️Ci - dessous, Et ça mène à notre Opérations de fichiersC'est bon.~
- Utilisez des fichiers pour placer les données directement sur le disque dur de votre ordinateur , Persistance des données
Ⅱ.Qu'est - ce qu'un fichier
En général, nous appelons:
- Les fichiers sur le disque sont des fichiers
Ce qui précède nous apprend que :
Il existe deux types de documents (Classification du point de vue de la fonction de fichier):
-
1️⃣Documents de procédure
-
① Fichier source(Suffixe as.c)
-
②Fichier cible(windowsLe suffixe d'environnement est.obj)
-
③Programme exécutable(windowsLe suffixe d'environnement est.exe)
-
-
2️⃣Fichiers de données
-
①Le contenu du fichier n'est pas nécessairement un programme,Ce sont des données lues et écrites au moment de l'exécution du programme.
-
②Par exemple,:Le programme exécute un fichier à partir duquel les données doivent être lues,Ou un fichier qui affiche le contenu
-
Ⅲ.Nom du fichier
Un fichier doit avoir un identifiant de fichier unique,Pour l'identification et la référence de l'utilisateur
️Le nom du fichier se compose de trois parties:
- Chemin du fichier+Nom du fichier tronc+Suffixe de fichier
Eg: c: \ code \ test.txt
🥯Ⅳ.Résumé
En résumé.: C'est ça.Documentation Un aperçu de ~
Mais comment pouvons - nous réellement manipuler les fichiers dans un programme ?
Ce qui suit nous amène à notre Fonction d'action du texte du fichier
2.. Fonction d'opération de fichier texte
Ⅰ.Pointeur de fichier
InCDans la langue, Chaque fois qu'on veut travailler sur le fichier :
-
1️⃣ Le fichier a d'abord été ouvert en mémoire avec un
Zone d'information du fichier,Informations relatives au stockage des documents【Comme le nom du fichier,État du fichier et emplacement actuel du fichier, etc】 -
2️⃣ Et la zone d'information du fichier est C La langue est en fait stockée dans un système déclaré comme
FILEDeVariables structurellesMoyenne
Faites attention à:
- Chaque fois qu'un fichier est ouvert,Le système sera basé sur les fichiers
AutomatiqueCréer unFILEVariables structurelles,Et remplir les informations,L'utilisateur n'a pas à se soucier des détails
️ Et la période C Langue pour plus de commodité FILE Cette variable de structure qui stocke les informations du fichier fonctionne ,On pourrait utiliserVariable du pointeur de fichier:
FILE* pf; //Variable du pointeur de fichier
️DéfinitionpfC'est une indicationFILEType de donnéesVariable pointeur
Pour qu'on puisse
pfPointer vers un fichierZone d'information du fichier(Est une variable structurelle),Pointer versFILEVariable de structure pour
Définitions générales
FILE*Le pointeur est conçu pour être plus facile à utiliserPointeur de fichierVas - y.Entretien/Accès àCette variable structurelle【Zone d'information du fichier】
En résumé.:
- Nous manipulons les fichiers ,En fait, c'est l'utilisation
Pointeur de fichierCette paire de variables structurellesZone d'information du fichier【FILECette variable structurelle】Exécution des opérations - C'est - à - dire:Le fichier associé peut être trouvé par la variable de pointeur de fichier
Ⅱ.Ouverture et fermeture des fichiers
🧇1.fopenFonctions
FILE * fopen ( const char * filename, const char * mode );
fopenRôle de la fonction: Le manipulateur ouvre le fichier sur le disque
-
Paramètres de la fonction:
-
filenamePour celui qui veut ouvrir le fichierNom du fichier -
modePour le dossierMode d'ouverture
-
-
Valeur de retour de la fonction: Renvoie un pointeur vers l'adresse de départ de la zone d'information du fichier pour ce fichier ,Le type de pointeur est
FILE*
️Comment fonctionne la fonction:
Lors de l'ouverture du fichier,Renvoie unFILE*La variable pointeur pour pointer vers le fichier,C'est l'équivalent d'établir une relation entre le pointeur et le fichier, Nous pouvons ensuite utiliser ce pointeur pour manipuler le fichier
- Fichier ouvert avec succès, Renvoie un
Adresse de départPointeur vers - L'ouverture du fichier a échoué,Renvoie
NULL
C'est comme Ouverture dynamique de la mémoireFonctions, Parce que l'ouverture a échoué , Nous ne pouvons pas utiliser le pointeur de retour directement , Nous devrions d'abord juger le pointeur de retour
🧇2.fcloseFonctions
int fclose ( FILE * stream );
fcloseRôle de la fonction: Fermer le fichier en cours d'opération
-
Paramètres de la fonction:
streamPour les fichiers que vous souhaitez fermerPointeur de fichier -
Valeur de retour de la fonction:
int
️Comment fonctionne la fonction:
Similaire àfreeFonctionnement, Il suffit d'entrer un pointeur de fichier ,fclose Ferme la zone d'information du fichier pointée par le pointeur de fichier
- Fichier fermé avec succès,Renvoie
0 - Échec de la fermeture,Renvoie
EOF【C'est - à - dire:-1】
🧇3. Comment ouvrir un fichier
En résumé.: Nous avons appris les fonctions d'ouverture et de fermeture des fichiers , Voyons ce qu'on fait fopen Comment utiliser la fonction
| Utilisation des fichiers | Sens | Si le fichier spécifié n'existe pas |
|---|---|---|
“r”(Lire seulement) |
Pour saisir des données,Ouvrir un fichier texte qui existe déjà | Erreur |
“w”(Écris seulement) |
Pour exporter des données,Ouvrir un fichier texte | Créer un nouveau fichier |
“a”(Annexe) |
Ajouter des données à la fin du fichier texte | Créer un nouveau fichier |
“rb”(Lire seulement) |
Pour saisir des données,Ouvrir un binaire | Erreur |
“wb”(Écris seulement) |
Pour exporter des données,Ouvrir un binaire | Créer un nouveau fichier |
“ab”(Annexe) |
Ajouter des données à la fin d'un binaire | Erreur |
“r+”(Lire et écrire) |
Pour lire et écrire,Ouvrir un fichier texte | Erreur |
“w+”(Lire et écrire) |
Pour lire et écrire,Un nouveau document est proposé | Créer un nouveau fichier |
“a+”(Lire et écrire) |
Ouvrir un fichier,Lire et écrire à la fin du document | Créer un nouveau fichier |
“rb+”(Lire et écrire) |
Ouvrir un fichier binaire pour lire et écrire | Erreur |
“wb+”(Lire et écrire) |
Pour lire et écrire,Créer un nouveau binaire | Créer un nouveau fichier |
“ab+”(Lire et écrire) |
Ouvrir un binaire,Lire et écrire à la fin du document | Créer un nouveau fichier |
Les trois premiers sont les plus souvent utilisés , On doit se souvenir. ~
Faites attention à: Pour manipuler le fichier , En général, ouvrez d'abord le fichier , N'oubliez pas de fermer le fichier 【C'est - à - dire:fopenAvecfclose Est destiné à être utilisé avec ,Il ne manque rien】
🧇4. Exemple
Eg:
int main()
{
//Ouvrir le fichier
FILE* pf = fopen ("test.txt","w");
//Pointeur de fichier de jugement
if (pFile==NULL)
{
perror("fopen");
return 1;
}
//Utilisation des fichiers
//...
//Fermer le fichier
fclose(pf);
pf = NULL;
return 0;
}
Ⅲ.Ordre de lecture et d'écriture des documents
| Fonction | Nom de la fonction | Pour |
|---|---|---|
| Fonction d'entrée de caractères | fgetc | Tous les flux d'entrée |
| Fonction de sortie de caractères | fputc | Tous les flux de sortie |
| Fonction d'entrée de ligne de texte | fgets | Tous les flux d'entrée |
| Fonction de sortie de ligne de texte | fputs | Tous les flux de sortie |
| Formater la fonction d'entrée | fscanf | Tous les flux d'entrée |
| Formater la fonction de sortie | fprintf | Tous les flux de sortie |
| Entrée binaire | fread | Flux de fichiers |
| Sortie binaire | fwrite | Flux de fichiers |
Ce qui précèdeEntrée/Produits:C'est vrai.DocumentationEntrée(Écrire)、Produits(Lire)
️ Pour vous donner une idée plus précise des fonctions ci - dessus , Ce qui suit est expliqué par paires de fonctions ~
️fputcFonctions
int fputc ( int character, FILE * stream );
fputcRôle de la fonction: Écrire un seul caractère au fichier
-
Paramètres de la fonction:
-
characterPour les caractères que vous souhaitez écrire dans le fichier -
streamPointeur vers l'adresse du fichier écrit à un seul caractère
-
-
Type de retour de la fonction:
int
️Comment fonctionne la fonction:
- La fonction écrit les caractères entrés dans le fichier pointé par le pointeur de fichier
Exemple:
Faites attention à:
- Chaque fois
"w"Ouvrir le fichier après avoir fermé le fichier , La prochaine fois que vous entrez dans le programme"w"S'il est ouvert , Le contenu du fichier est réinitialisé 【 C'est - à - dire que tout ce qui a été écrit pour la dernière fois a été effacé 】
️fgetcFonctions
int fgetc ( FILE * stream );
fgetcRôle de la fonction: Lire le contenu d'un caractère du fichier
-
Paramètres de la fonction:
streamPointeur vers l'adresse du fichier où vous voulez lire les caractères -
Type de retour de la fonction:
int
️Comment fonctionne la fonction:
- La fonction lit un caractère dans le fichier à la fois
- Renvoie les caractères lus
ASCIIValeur
Faites attention à:
- Chaque utilisation
fgetcFonctions, Après avoir lu un caractère dans le fichier , Le pointeur de fichier est automatiquement décalé ,Pointez vers le caractère suivant, Facile à lire le caractère suivant
Exemple:
🧡fputsFonctions
int fputs ( const char * str, FILE * stream );
fputsRôle de la fonction: Écrire une chaîne dans le fichier
-
Paramètres de la fonction:
-
strPour la chaîne à écrire -
streamPointeur vers l'adresse du fichier qui a écrit la chaîne
-
-
Valeur de retour de la fonction:
int
️Comment fonctionne la fonction:
- La fonction écrit les caractères entrés dans le fichier pointé par le pointeur de fichier
Exemple:
🧡fgetsFonctions
char * fgets ( char * str, int num, FILE * stream );
fgetsRôle de la fonction: Lire la chaîne dans le fichier
-
Paramètres de la fonction:
-
strPour la chaîne à lire à partir du fichier ,Copie àstrDans l'espace pointé【Généralement un tableau】 -
numNombre de chaînes lues pour -
streamPour pointer vers l'adresse où vous voulez lire le fichier
-
-
Valeur de retour de la fonction:
char*
️Comment fonctionne la fonction:
- La fonction lira le fichier
numChaîne de caractères nombre de caractères
Faites attention à:
-
1️⃣ Le nombre réel de chaînes lues est plus élevé que
numUn de moins【 Parce qu'il faut réserver une place pour la fonction\0ÀstrMoyenne】 -
2️⃣ Le processus de lecture est similaire à
fgetc, Le pointeur de fichier a suivi les caractères lus , Ce qui a été lu cette fois ne peut pas être lu , Lire seulement en arrière
Exemple:
fprintfFonctions
int fprintf ( FILE * stream, const char * format, ... );
fprintfRôle de la fonction: Écrire les données des variables formatées dans un fichier
-
Paramètres de la fonction:
-
streamPointeur vers l'adresse du fichier où les données formatées sont écrites -
formatPour le format des données écrites 【Eg:%s、%d……】 -
...Source des données
-
-
Valeur de retour de la fonction:
int
️Comment fonctionne la fonction:
- La fonction écrit les données formatées dans un fichier
Ici, nous pouvons comparer printFonctions:
Il n'est pas difficile de trouver ici :printfAvecfprintfIl y a deux paramètres identiques entre , Pour mieux comprendre ce qu'estFormatage des donnéesC'est, Il suffit de réfléchir à la façon dont nous utilisonsprintfLes données des variables de sortie sont connues
Exemple:
fscanfFonctions
int fscanf ( FILE * stream, const char * format, ... );
fscanfRôle de la fonction: Format pour lire les données dans le fichier
-
Paramètres de la fonction:
-
streamPointeur vers l'adresse du fichier où les données ont été lues au format -
formatPour lire le format des données 【Eg:%s、%d……】 -
...Où les données formatées sont écrites
-
-
Valeur de retour de la fonction:
int
️Comment fonctionne la fonction:
- La fonction lit les données dans le fichier de manière formatée
Exemple:
🫓 Résumé
En résumé.: Est applicable àToutes les entrées、Flux de sortie Saisie de texte dans le fichier 、 Sortie de la fonction d'opération ~
️En termes simples: C'est l'entrée de texte dans un fichier 、Produits
fwriteFonctions
size_t fwrite ( const void * ptr, size_t size, size_t count, FILE * stream );
fwriteRôle de la fonction: Écrire des données binaires au fichier
-
Paramètres de la fonction:
-
ptrPointeur vers le stockage des données à écrire dans le fichier -
sizePour Taille totale des données à écrire 【Unité:Octets】 -
countÉcris un maximum desizeDonnées en taille 【Unité:Octets】 -
streamPointeur vers l'adresse du fichier où les données sont écrites
-
-
Valeur de retour de la fonction:
size_t
️Comment fonctionne la fonction:
- La fonction sera utilisée à chaque fois avec
countTaille octets ,DeptrLes données extraites sont écrites dans un fichier binaire , C'est écritsizeOctets
Exemple:
Faites attention à:
- Ici.
fwriteLe troisième argument de la fonctioncountPour1C'est à cause de l'avant.sizeEst de calculer la taille de toute la structure , C'est - à - dire en unités de toute la structure ,Donc ici1Ça veut dire...La plupartN'écrivez qu'une seule donnée de cette taille de structure entière
En fait,10Et5.5f A été écrit en binaire dans le texte , C'est juste que le format du texte ne s'affiche pas , C'est pour ça qu'il y a du désordre
freadFonctions
size_t fread ( void * ptr, size_t size, size_t count, FILE * stream );
freadRôle de la fonction: Lecture binaire des données du fichier
-
Paramètres de la fonction:
-
ptrPointeur vers les données du fichier à lire -
sizePour Taille totale des données à lire 【Unité:Octets】 -
countLire pour un maximum desizeDonnées en taille 【Unité:Octets】 -
streamPointeur vers l'adresse du fichier à lire
-
-
Valeur de retour de la fonction:
size_t
️Comment fonctionne la fonction:
- La fonction sera utilisée à chaque fois avec
countTaille octets , Lire les données binaires du fichier àptrEspace pointé,Il y a des lecturessizeOctets
Exemple:
🫓 Résumé
En résumé.: Est applicable àImportation de fichiers、Flux de sortie Entrée binaire du fichier 、 Sortie de la fonction d'opération ~
️En termes simples: C'est l'entrée binaire d'un fichier 、Produits
sprintfFonctions
int sprintf ( char * str, const char * format, ... );
sprintfRôle de la fonction: Écrivez une donnée formatée dans une chaîne
-
Paramètres de la fonction:
-
streamPointeur vers l'adresse où les données formatées sont écrites à la chaîne -
formatPour le format des données écrites 【Eg:%s、%d……】 -
...Source des données
-
-
Valeur de retour de la fonction:
int
️En termes simples:
- Est de convertir les données formatées en format de chaîne pour l'impression 、Produits
Exemple:
sscanfFonctions
int sscanf ( const char * s, const char * format, ...);
sscanfRôle de la fonction: Lire une chaîne à partir d'une donnée formatée
-
Paramètres de la fonction:
-
streamPointeur vers l'adresse où la chaîne est stockée -
formatPour le format des données écrites 【Eg:%s、%d……】 -
...Où les données formatées sont écrites
-
-
Valeur de retour de la fonction:
int
️En termes simples:
- Est de lire les données dans une chaîne de caractères dans un format
Exemple:
🫓 Résumé
En résumé.: C'est que les données sontFormat formatAvecForme de chaîne La transition entre ~
️En termes simples: La fonction ci - dessus est comparée à printfEtscanf Il y en a plus s,C'estsÇa veut dire:string, Prouver que toutes les fonctions ci - dessus sont des transformations de chaînes ~
Ⅳ.Lecture et écriture aléatoires de fichiers
fseekFonctions
int fseek ( FILE * stream, long int offset, int origin );
fseekRôle de la fonction: Localiser le pointeur de fichier en fonction de sa position et de son décalage
-
Paramètres de la fonction:
-
streamPointeur vers l'adresse du fichier -
offsetOffset for file pointer -
originL'adresse de départ relative pour l'offset du pointeur de fichier
-
-
Valeur de retour de la fonction:
int
️Comment fonctionne la fonction:
- La fonction placera le pointeur de fichier à la position de départ sélectionnée
originOffset atoffsetPosition, Accédez à l'endroit où vous voulez que le pointeur de fichier atteigne
C La langue offre trois origin(Position de départ):
- 1️⃣
SEEK_SET:“ Au début du fichier ” Décalage de démarrage - 2️⃣
SEEK_CUR:“Emplacement actuel du pointeur de fichier” Décalage de démarrage - 3️⃣
SEEk_END:“À la fin du document” Décalage de démarrage
Exemple:
🤎ftellFonctions
long int ftell ( FILE * stream );
ftellRôle de la fonction: Renvoie l'offset du pointeur de fichier par rapport à la position de départ
-
Paramètres de la fonction:
streamPointeur vers l'adresse du fichier
-
Valeur de retour de la fonction:
int
️Comment fonctionne la fonction:
- La fonction renvoie l'offset du pointeur de fichier actuel par rapport à la position de départ du fichier
Exemple:
rewindFonctions
void rewind ( FILE * stream );
rewindRôle de la fonction: Renvoie la position du pointeur de fichier à la position de départ du fichier
-
Paramètres de la fonction:
streamPointeur vers l'adresse du fichier
-
Valeur de retour de la fonction:
void
️Comment fonctionne la fonction:
- Réinitialiser la position du pointeur de fichier
Exemple:
🫓 Résumé
En résumé.: Est une fonction qui permet au pointeur de fichier de lire au hasard ~
️En termes simples: Avec les fonctions ci - dessus, Pour que le pointeur de fichier puisse lire où et où ~
Trois.Fichiers texte et binaires
En termes simples:
-
Les données sont en mémoire avec
BinaireStockage sous forme de, Si la sortie n'est pas convertie ,C'estBinaires -
Si c'est fait
ASCIIConversion formelle des caractères , Le fichier stocké estFichier texte
Faites attention à:
-
1️⃣
Les caractèresFaire en sorte que tous soientASCIIStockage formel【 C'est pourquoi la lecture binaire dont nous avons parlé ci - dessus a le même effet que la lecture de texte 】 -
2️⃣
Type numériqueLes données sont disponiblesASCIIStockage formel,Peut également être utiliséBinaireStockage formel
Eg: S'il y a des entiers10000
-
Si
ASCIISortie du Code sur le disque,Utilisé sur le disque5Octets(Un octet par caractère) -
BinaireProduction formelle,Sur le disque4Octets
Quatre.Détermination de la fin de la lecture du fichier
Ⅰ.feofFonctions
int feof ( FILE * stream );
feofRôle de la fonction: Déterminer si la fin du fichier est due à la fin du fichier
-
Paramètres de la fonction:
streamPointeur vers l'adresse du fichier
-
Valeur de retour de la fonction:
int
️Comment fonctionne la fonction:
-
1️⃣ Si le fichier se termine parce que la fin du fichier est rencontrée ,Renvoie
Non0Valeur -
2️⃣ Si la fin du fichier n'est pas due à la fin du fichier rencontrée ,Renvoie
0
En termes simples:
feofC'est à la fin du dossier , Fin du jugement du fichier en raison d'un échec de lecture ,Ou la fin du fichier a été rencontrée
Faites attention à:
- 1️⃣
feofOn ne peut que juger de la raison pour laquelle , Mais ne peut pas être utilisé pour déterminer si le fichier est terminé 【Parce que c'estfeofConditions préalables à l'utilisation, Ne peut pas être utilisé comme conclusion 】
DocumentationLireTerminé ou non, Nous jugeons sur la base de :
-
1️⃣Fichier texte:
-
①
fgetcÀ la fin de la lecture,RetourEOF -
②
fgetsÀ la fin de la lecture,RetourNULL
-
-
2️⃣Binaires:
- ①
freadÀ la fin de la lecture,Renvoie une valeur inférieure àNombre réel de lecturesValeur de
- ①
En résumé.:
feofC'est - à - dire déterminer si la fin du fichier est due aux trois drapeaux de fin ci - dessus
Cinq.Tampon de fichier
Qu'est - ce qu'un tampon de fichier:
- Ce qu'on appelle
Système de fichiers tamponnéEst que le système ouvre automatiquement un bloc en mémoire pour chaque fichier utilisé dans le programme“Tampon de fichier”
Faites attention à:
-
1️⃣ De la mémoire au disque
ProduitsLes données sont d'abord envoyées dans un tampon en mémoire ,Il n'est livré sur le disque qu'après avoir rempli le tampon -
2️⃣Si vous passez du disque à l'ordinateur
Lire dansDonnées,Lire l'entrée de données du fichier disque dans le tampon mémoire(Tampon plein),Ensuite, les données sont envoyées un par un à partir du tampon dans la zone de données du programme(Variables du programme, etc.) -
3️⃣Buffer
TailleSelonCSystème de compilationDécidé.
En résumé.:
-
Parce qu'il y a un tampon,CLangue lors de la manipulation des fichiers,Besoin de rafraîchir Le tampon ou fermer le fichier à la fin de l'opération, Pour lire et écrire correctement le fichier
-
Sinon,Si tu ne le fais pas,Peut causer des problèmes de lecture et d'écriture de fichiers
🫓Résumé
En résumé., On a une idée de base de CDans la langue “Opérations de fichiers” La connaissance de~~
Félicitations pour l'amélioration de vos compétences internes!!!
Merci pour votre lecture
Les mises à jour se poursuivront plus tard.,Bienvenue à l'attention continue yo~
En cas d'erreur,Bienvenue.
Si vous vous sentez plein,Un peu de soutien.~

版权声明
本文为[Dream Ocean]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/04/202204220025388026.html
边栏推荐
- 数字化时代,企业运维面临现状及挑战分析解读
- L1-020 帅到没朋友
- Deeply analyze the six differences between ERP and MES, and be sure to read them patiently
- It is said that MES can improve the production efficiency of enterprises. What are the specific aspects?
- 24张图攻克border-image
- When the notebook expands the external display, the mouse cannot move to another screen outside the main display
- L1-043 reading room
- Cross chain bridge vulnerability summary
- 【微服务】(八)—— Eureka 平滑迁移 Nacos 方案
- 7-Zip 曝出零日安全漏洞!通过“模仿文件扩展名”向攻击者提供管理员权限
猜你喜欢

SEO keyword expansion - Automatic Keyword expansion software free download
![[redis] using redis to optimize the display of provinces, the data will not be displayed](/img/cd/512223b6ecb06d0cd60510df600ca0.png)
[redis] using redis to optimize the display of provinces, the data will not be displayed

【微服务】(八)—— Eureka 平滑迁移 Nacos 方案

It is said that MES can improve the production efficiency of enterprises. What are the specific aspects?

Material UI中JSS的写法(随手笔记)

DR/AP4029 outdoor IPQ-4019/4029 Outdoor directional-antennas

Sqlserver - Excel database connection related knowledge

Tree and binary tree

阿里超大规模 Flink 集群运维体系介绍

I've got an offer, and I need some knowledge for the interview
随机推荐
What has changed since Huawei Routing & Switching switched to datacom
简单了解Oracle+JPA+Hibernate
AI 视频云 VS 窄带高清,谁是视频时代的宠儿
MDC 管理多线程日志
L1-019 who falls first
Sqlserver - Excel database connection related knowledge
[知识图谱] 金融证券知识图谱项目目录
Distributed transactions and Seata
移动互联网开发专业,一次关于JVM的面试经历
[Golang]力扣Leetcode - 657. 机器人能否返回原点(模拟)
SEO keyword expansion - Automatic Keyword expansion software free download
实现Nest中参数的联合类型校验
软件测试的目的,为什么要做软件测试?
Wait(), wait (long), wait (long, int) / notification mechanism notify(), notifyall()
二分查找法
redis持久化
24张图攻克border-image
L1-025 正整数A+B
Rasa对话机器人连载四 第121课:Rasa对话机器人Debugging项目实战之电商零售对话机器人运行流程调试全程演示-4
Linuix cat instruction
































