Comment algorithmez-vous la détection des clusters d'alimentation MA ? - page 13

 

Ouvert :

int file_handle=FileOpen("test.bin",FILE_WRITE|FILE_READ|FILE_BIN);

Allez ensuite à la fin du fichier avec FileSeek()

 
Dmitry Fedoseev:

Ouvert :

Ensuite, allez à la fin du fichier avec FileSeek()

Dmitry merci, bon article.

Puis-je vous poser une question, si un fichier existant est ouvert avec un drapeau d'écriture seule, il écrasera immédiatement le fichier vide, au moment de l'ouverture, ou au moment de la première écriture ?

Il est clair que sans drapeau de lecture nous ne pouvons pas aller jusqu'à la fin, donc nous ne pouvons pas sauvegarder le contenu du fichier à cette ouverture, mais j'ai remarqué que même sans écriture, seule l'ouverture du fichier perdait son contenu.

 
Valeriy Yastremskiy:

Dmitry, merci, bon article.

Puis-je poser une question, si un fichier existant est ouvert avec l'option écriture seule, il sera écrasé vide au moment de l'ouverture, ou au moment de la première écriture ?

Il est clair que sans le drapeau de lecture seule, on ne peut pas aller jusqu'au bout, donc on ne peut pas sauvegarder le contenu du fichier en l'ouvrant de cette façon, mais j'ai remarqué que même sans écriture, en l'ouvrant seulement, le fichier perdait son contenu.

Vous pouvez faire une expérience - ouvrir, ne pas écrire et fermer - le fichier sera vide. Il s'ensuit que le fichier est nettoyé lorsqu'il est ouvert.

Qu'y a-t-il à remarquer ? Il est conçu de cette façon.

 
Dmitry Fedoseev:

Vous pouvez faire une expérience - ouvrir, ne pas écrire et fermer - le fichier sera vide. Il s'ensuit que le fichier est nettoyé lorsqu'il est ouvert.

Qu'y a-t-il à remarquer ? Il est conçu de cette façon.

Qui vérifiera, me fera savoir quel est le résultat.

 
Farkhat Guzairov:

Qui vérifiera, me fera savoir quel est le résultat.

Vérifié, mais pas comme ça, après avoir ouvert un fichier non vide pour écrire, mes fonctions d'écriture ne sont pas vides et commencent après 100 sec. Si je n'attends pas et ne ferme pas les fichiers, les fichiers sont vides. J'ai mis aussi pour la lecture, puis le contenu du fichier a commencé à rester. et n'a pas effacé le premier enregistrement, si le curseur n'est pas envoyé à la fin, écrit au début du fichier.

 
Valeriy Yastremskiy:

Vérifié, mais pas comme ça, après avoir ouvert un fichier non vide pour écrire, j'ai les fonctions d'écriture non vides et qui démarrent après 100 sec. Si je n'attends pas et ne ferme pas les fichiers, les fichiers sont vides. J'ai mis aussi pour la lecture, puis le contenu du fichier a commencé à rester. et n'a pas effacé le premier enregistrement, si le curseur n'est pas envoyé à la fin, écrit au début du fichier.

J'ai également rencontré ce problème, mais je n'ai pas réussi à le surmonter.

 
Farkhat Guzairov:

J'ai rencontré ce problème aussi, et je n'arrive pas à m'en débarrasser.

Qu'avez-vous rencontré et que n'avez-vous pas surmonté ?

 
Farkhat Guzairov:

J'ai également rencontré ce problème, mais je n'ai pas pu le surmonter.

J'ai tout surmonté) Il écrit à la fois au début et, si nécessaire, à la fin du fichier. Tout fonctionne, vous pouvez même au milieu si vous voulez).

 
Dmitry Fedoseev:

Qu'avez-vous rencontré et qu'est-ce que vous n'avez pas résolu ?

Je comprends le problème, si vous écrivez au début du fichier, les lignes sont écrasées, pas décalées)).

Est-il possible d'insérer des lignes dont les plus basses sont décalées vers le bas ?

 
Valeriy Yastremskiy:

Je pense que ça a marché) Il écrit au début et, si nécessaire, à la fin du fichier. Tout fonctionne, on peut même écrire au milieu si on veut).

Au début et au milieu, il ne réinitialise pas le contenu du fichier et l'écrase.