Comment lire les valeurs en hexadécimal à partir d'un fichier à l'aide de fstream en c++?
Comme le dit le titre, comment voulez-vous lire les valeurs hexadécimales à l'aide de fstream
?
j'ai ce code: (disons que nous avons "FF" dans le fichier.)
fstream infile;
infile.open(filename, fstream::in|fstream::out|fstream::app);
int a;
infile >> std::hex;
infile >> a;
cout << hex << a;
mais cela ne me donne pas une sortie au lieu de ff
. Je sais qu'il est un fscanf(fp, "%x", val)
mais je suis curieux, est-il possible de faire cela en utilisant le flux de la bibliothèque.
Mise à JOUR:
Mon code a été la bonne, il s'avère que mon erreur était que je ne pouvais pas lire "FFF"
et le mettre dans la variable a,b,c comme ça
while (infile >> hex >> a >> b >> c)
{
cout << hex << a << b << c << "\n";
}
Quelqu'un peut-il m'aider? dois-je avoir à séparer toutes les valeurs hexadécimales je veux les lire avec l'espace?
parce que infile >> hex >> setw(1)
ne fonctionne pas..
Cela n'a rien à voir avec des valeurs hexadécimales. Votre erreur est ailleurs.
avant de demander ici, une recherche sur google. Je suis sûr que vous trouverez la réponse à cette question triviale
J'ai cherché sur google, mais il n'a pas fonctionné pour mon cas..
vous avez eu raison, mais j'ai une autre question s'il vous plaît aidez moi 😐
Parfois, il est difficile d'exprimer votre requête dans cette "zone de Texte". Par conséquent, il est souhaitable de demander ici. Aussi, vous pouvez finir vers le haut d'obtenir des liens brisés ou des informations incorrectes. Ce site est soutenu par une communauté active. Donc la réponse ici est une valeur de plus même si la même chose pourrait être trouvée à l'aide de Google.
avant de demander ici, une recherche sur google. Je suis sûr que vous trouverez la réponse à cette question triviale
J'ai cherché sur google, mais il n'a pas fonctionné pour mon cas..
vous avez eu raison, mais j'ai une autre question s'il vous plaît aidez moi 😐
Parfois, il est difficile d'exprimer votre requête dans cette "zone de Texte". Par conséquent, il est souhaitable de demander ici. Aussi, vous pouvez finir vers le haut d'obtenir des liens brisés ou des informations incorrectes. Ce site est soutenu par une communauté active. Donc la réponse ici est une valeur de plus même si la même chose pourrait être trouvée à l'aide de Google.
OriginalL'auteur ardiyu07 | 2011-02-18
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser le sortilège de modificateur
OriginalL'auteur Bernd Elkemann
Vous avez de la chaîne d'
std::hex
lors de la lecture, de la même manière que vous avez de la chaîne d'elle pour l'écriture :Il a travaillé pour moi, bien que j'ai été en utilisant cin
Il ne fonctionne pas. ideone.com/qs2Z5 Aussi à l'aide de std::hex sur une autre ligne, comme vous l'avez fait, les œuvres. Votre erreur est ailleurs.
Vous les gars droit, il a travaillé! mais j'ai une autre question, veuillez voir la mise à jour et de m'aider 😐
OriginalL'auteur Nekresh
Cela fonctionne:
Inutiles; le destructeur va faire implicitement.
OriginalL'auteur Oliver Charlesworth
Assurez-vous également que votre fichier d'entrée est écrite à l'aide d'un éditeur Hexadécimal, et non un éditeur de texte normal.
Sinon, un fichier foo.txt contenant un caractère 'a' sera lu comme 0x61 et d'imprimer des 0x61 au lieu de 0xa. Une belle Hex editor pour linux est "Bénir".
Mon point est d'utiliser un éditeur Hexadécimal - n'importe laquelle. Par conséquent, le lien est facultatif dans ma réponse. Il n'est qu'une suggestion. Je comprends votre point de si. Merci.
OriginalL'auteur Than21