fstream et espaces - C++ - Programmation
Marsh Posté le 07-12-2003 à 21:58:08
tu dois te planter qq part, ça m'étonnerai fort qu'un stream bouffe des octets sous prétexte qu'ils valent 0x20
Marsh Posté le 07-12-2003 à 22:00:46
Code :
|
Marsh Posté le 07-12-2003 à 22:03:49
bin ... c bizarre ... j'ai du faire une erreur qq part : au bout d'un moment il me retourne n'importe quoi ...
Code :
|
pour cette 1ere lecture (f >> Hdr ca marche bien, mais apres j'en lis d'autre exactement sur le même principe et au bout d'un moment ca lit n'importe pas (pas le contenu du fichier en tout cas)
Marsh Posté le 07-12-2003 à 22:09:35
le >> n'a pas le meme sens, effectivement, il cherche un caractère qui n'est pas isspace
pas mal tes excepions mais n'utilise pas std::exception, dérive la tienne plutot
pour ton fichier, compacte le tout en
ifstream f(FileName.c_str());
et après test, peut être préférablement avec f.good()
l'union peut être de porter interne à la classe
évite les nombre magique (utilise plutot sizeof)
evite les friend, définit plutot
FH::print(ostream & )
et après en externe pas friend
Code :
|
Marsh Posté le 07-12-2003 à 22:16:32
et aufait, pourquoi ne pas utiliser les méthode read et write plutot que de faire des unions ?
Marsh Posté le 07-12-2003 à 22:41:39
bien, merci pour ces conseils
j'utilise un nombre magique car c'est une liste (à taille variable) que je dois lire
pour la place des unions, c'est parce que je les utilisais dans d'autres classes du même style
je vais me documenter sur les methodes read et write, que je ne connaissais pas
pour les exceptions, ok
sinon, pourquoi eviter les friend ? pour une meilleure gestion des droits d'acces ?
Marsh Posté le 07-12-2003 à 22:46:59
ben comme je t'ai dit pour les friend. regarde vite du cote de read/write (E/S binaire, pas la peine de faire des acrobaties)
Marsh Posté le 07-12-2003 à 22:58:02
ah, oui, read et write m'evite des complications, ca marche nickel, merci bcp
Marsh Posté le 07-12-2003 à 21:52:04
Bonjour,
j'ouvre un fichier en utilisant fstream, et je voudrais pouvoir le lire caractère par caractère. le problème est que fstream enleve apparement les espaces de ce qu'il me renvoit. y a-t-il moyen d'eviter ca ?
---------------
-( BlackGoddess )-