[c++] StreamWriter.Write(int)
lastikovdb
-
lastikovdb -
lastikovdb -
Bonjour,
voilà, je suis en train de faire un programme en C++ et je voudrais imprimer des résultats dans un fichier. J'utilise donc la classe StreamWriter et la méthode Write... Voilà mon code :
Rien de bien compliqué en somme mais le problème est que voici ce que j'obtiens en sortie :
Les petits carrés pas beau là ce sont des caractères spéciaux en lieu et place de mon int i tout bête. J'imagine qu'il interprète l'entier comme un code ASCII, mais pourquoi ? Selon la page officielle (https://docs.microsoft.com/fr-fr/dotnet/api/system.io.streamwriter.write?redirectedfrom=MSDN&view=netframework-4.8 la méthode est surchargée et devrait donc marcher avec des entiers. Le plus étonnant est d'ailleur qu'elle fonctionne bien avec les valeurs mais pas avec l'indice...
Bref si quelqu'un pouvait m'expliquer ce qui se passe et me donner une solution ou même une piste, il me serait d'un grand secours...
voilà, je suis en train de faire un programme en C++ et je voudrais imprimer des résultats dans un fichier. J'utilise donc la classe StreamWriter et la méthode Write... Voilà mon code :
StreamWriter^ sw = File::CreateText( path );
try {
sw->Write( "PRINTING DATA : " );
sw->Write( label );
sw->Write( "(size = " );
sw->Write( size );
sw->WriteLine( " )" );
sw->Write( "Date and Time : " );
sw->WriteLine(DateTime::Now);
sw->WriteLine( "---------------------" );
for (int i=0; i<size; i++){
sw->Write( "i=" );
sw->Write( i ); // TODO
sw->Write( " | value=");
sw->WriteLine ( data[i] );
}
sw->WriteLine( "---------------------" );
} finally {
if ( sw ) delete (IDisposable^)sw;
}
}
Rien de bien compliqué en somme mais le problème est que voici ce que j'obtiens en sortie :
PRINTING DATA : Left laser values(size = ʩ ) Date and Time : 7/28/2009 5:54:42 PM --------------------- i= | value=0 i= | value=0 i= | value=0 i= | value=0 i= | value=0 i= | value=0 i= | value=0 i= | value=0 i= | value=0 i= | value=0 i= | value=0 i= | value=0 i= | value=3503 i= | value=3484 i= | value=3481 i= | value=3476 i= | value=3463 i= | value=3449 i= | value=3439 [...]
Les petits carrés pas beau là ce sont des caractères spéciaux en lieu et place de mon int i tout bête. J'imagine qu'il interprète l'entier comme un code ASCII, mais pourquoi ? Selon la page officielle (https://docs.microsoft.com/fr-fr/dotnet/api/system.io.streamwriter.write?redirectedfrom=MSDN&view=netframework-4.8 la méthode est surchargée et devrait donc marcher avec des entiers. Le plus étonnant est d'ailleur qu'elle fonctionne bien avec les valeurs mais pas avec l'indice...
Bref si quelqu'un pouvait m'expliquer ce qui se passe et me donner une solution ou même une piste, il me serait d'un grand secours...
Configuration: Windows XP Firefox 3.5.1
A voir également:
- [c++] StreamWriter.Write(int)
- Int converter - Télécharger - Bureautique
- Assignment to 'int *' from 'int' makes pointer from integer without a cast ✓ - Forum C
- Int input - Forum Python
- Object of type 'int' has no len() - Forum Programmation
- Remote printer recipient_name fax_number iddd tpc int - Forum Windows