Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : troquer un fichier avec stdio.h [ Archives / Fichier / Disque ] (gergalp)

mercredi 30 mars 2005 à 00:57:15 | troquer un fichier avec stdio.h

gergalp

je voudrais savoir s'il existe une fonction dans stdio.h pour tronquer un fichier, c'est à dire retirer X octets en fin de fichier, et par extension, si il y a un moyen de retirer X octets n'importe où dans le fichier, sans tout réécrire.

mercredi 30 mars 2005 à 06:06:18 | Re : troquer un fichier avec stdio.h

NitRic

avec <stdio.h> j'en doute mais avec l'API Windows directement oui

CreateFile() pour ouvrire le fichier
SetFilePointer() pour déplacer le curseur dans le fichier la ou tu veux
SetEndOfFile() pour marquer la fin du fichier la ou ce trouve le curseur
CloseHandle() pour pour fermer le fichier(à la fin)

Pour retirer x octet(s) dans un fichier sans tout réécrire, tu peux utiliser le FileMapping

dans l'ordre:
   - CreateFile()
   - CreateFileMapping()
   - MapViewOfFile()
   - memmove() pourait faire l'affaire(pour déplacer tes octets)
   - UnmapViewOfFile()
   - CloseHandle(CreateFileMapping())
   - CloseHandle(CreateFile())
(voir MSDN pour _tous_ les détails)

Si tu as trop de difficulté, je pourrais te faire un exemple.



~(.:: NitRic ::.)~

mercredi 30 mars 2005 à 09:33:19 | Re : troquer un fichier avec stdio.h

angsthase

Pour moi, est ce que tu pourrais me faire un exemple stp  !!!
Merci d'avance.

AngstHase

mercredi 30 mars 2005 à 20:10:57 | Re : troquer un fichier avec stdio.h

gergalp

ben perso, le but était de faire un code portable, donc pas d'API windows

samedi 2 avril 2005 à 01:44:03 | Re : troquer un fichier avec stdio.h

NitRic

gargalp, le filemapping existe aussi sous Linux alors tu pourrais te faire un petit module
Win/Linux

#if WINDOWS
   /* fonctions/code pour windows */
#else /* on assume que c'est linux */
   /* fonctions/code pour linux */
#endif

la macro `WINDOWS` n'est pas valide, faut voir au niveau des compilos/systèmes/...
pour ce qui est du filemapping sous linux, je ne sais pas comment faire, je ne code que sous Windows, désolé ...



angsthase, c'est d'accord, j'vais faire un exemple(pour Windows) et je vais le poster d'ici une journée ou deux.





~(.:: NitRic ::.)~

dimanche 3 avril 2005 à 04:45:31 | Re : troquer un fichier avec stdio.h
lundi 4 avril 2005 à 09:21:16 | Re : troquer un fichier avec stdio.h


Cette discussion est classé dans : fichier, octets, retirer, stdio, troquer


Répondre à ce message

Sujets en rapport avec ce message

Integration fonction C [ par metek ] Bonjour!!Voila j'ai une ptite question sur les API!!!J'ai fait un petit programme qui liste un fichier texte cherche un mot entré et recupere le reste Modifier des octets dans un fichier ? [ par supergrey ] Salut, je voudrais savoir comment modifier des octets au milieu d'un fichier, jusqu'ici je recopier tout le fichier en changeant les octet voulu mais retirer l'attribut en lecture seul [ par chikamaru2 ] Voila,je doit creer un programme en c++ qui retire à tous les fichier (dans la racine du disque dur) l'attribut de fichier en lecture seul.Je ne sais Lire les 6 dernier octets d'un fichier? [ par supergrey ] Bonjour, je souhaite lire les 6 derniers octets d'un fichier j'ai écris le code suivant mais ca n'a pas l'air de marché car byteread est à zéro: char Taille de buffer pour récupérer tous les octets d'un fichier [ par Tibabou ] Bonjour,    Je souhaite, tout simplement, récupérer tous les octets d'un fichier dans un tableau. Jusque là, rien d'extraordinaire.J'essaie donc de ré Octets squatteur [ par gdpasmini ] Bonjour a tous ! Un phénomène étrange se produit dans mon programme... Je suis censé prendre des données provenant d'un réseau que je place octet par EOF avec les API Windows [ par faucheuse ] Bien le bonjour ami(e)s programmeurs et programmeuzes,Je débute avec les API Windows et j'ai une classe à faire pour le manipulation de fichier (Creer lire un fichier binaire bit par bit [ par MrDimanche ] Bonjour,Voila mon problème : j'ai un fichier binaire à lire, et j'utilise un "ifstream" puit get... Ca marche très bien, mais ça lit les données octet Enregistrer trames au format pcap [ par boudafc ] Bonjour !Voici mon problème et ma question:Je fabrique une trame ethernet de A à Z, et j'aurais voulu savoir s'il y avait un moyen de l'enregistrer da lecture etenvoi de fichier binaire [ par mitali ] Bonjour tt l mondej'ai un souci au niveau d'une fonction qui me permet d'envoyer un fichier de type tar.gz vers un serveur,por cela j'utilise la fonct


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,281 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.