summaryrefslogtreecommitdiff
path: root/ToD/ExtracteurIdiot.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'ToD/ExtracteurIdiot.cpp')
-rw-r--r--ToD/ExtracteurIdiot.cpp190
1 files changed, 95 insertions, 95 deletions
diff --git a/ToD/ExtracteurIdiot.cpp b/ToD/ExtracteurIdiot.cpp
index 8825d97..fde5134 100644
--- a/ToD/ExtracteurIdiot.cpp
+++ b/ToD/ExtracteurIdiot.cpp
@@ -1,96 +1,96 @@
-#include <iostream>
-#include <iomanip>
-#include <fstream>
-#include <vector>
-
-using namespace std;
-
-int main(int, char **)
-{
- int iPosPointeur, iPosTexte;
- char szPath[2][256];
- vector<unsigned char> vFichier;
-
- cout << "Entrez le nom du fichier :";
- cin >> szPath[0];
- cout << "Entrez le nom du fichier texte :";
- cin >> szPath[1];
-
- cout << "Entrez la position du pointeur (Hexadeciaml) :";
- cin >> hex >> iPosPointeur;
- cout << "Entrez la position du texte (Hexadeciaml) :";
- cin >> hex >> iPosTexte;
-
- ifstream ifFichier(szPath[0], ios::binary);
-
- if(ifFichier)
- {
- ifFichier.seekg(0, ios::end);
- vFichier.resize(ifFichier.tellg());
-
- ifFichier.seekg(0, ios::beg);
- ifFichier.read((char *) vFichier.begin(), vFichier.size());
- }
-
- ofstream ofTexte(szPath[1], ios::binary | ios::trunc);
-
- for(int i = 0; i < (iPosTexte - iPosPointeur) / 2; i++)
- {
- ofTexte << "<PT" << setw(4) << setfill('0') << i << ">\n";
-
- for(int j = iPosPointeur + vFichier[iPosPointeur + i * 2] +
- (vFichier[iPosPointeur + i * 2 + 1] * 256); vFichier[j] != 0; j++)
- switch(vFichier[j])
- {
- case 0x01:
- ofTexte << "<NOM:" << (int) vFichier[++j] << ">";
- break;
- case 0x02:
- ofTexte << "<02>";
- break;
- case 0x03:
- ofTexte << "<03>";
- break;
- case 0x04:
- switch (vFichier[++j])
- {
- case 0x02:
- ofTexte << "<VIOLET>";
- break;
- case 0x04:
- ofTexte << "<VERT>";
- break;
- case 0x05:
- ofTexte << "<BLEU>";
- break;
- case 0x06:
- ofTexte << "<JAUNE>";
- break;
- case 0x0F:
- ofText << "<FINCOULEUR>";
- break;
- default:
- ofTexte << setw(2) << << setfill('0') << hex << vFichier[j];
- }
- break;
- case 0x05:
- ofTexte << "<05>";
- break;
- case 0x06:
- ofTexte << "<06>";
- break;
- case 0x0c:
- ofTexte << "<NP>\n";
- break;
- case 0x0a:
- ofTexte.put('\n');
- break;
- default:
- ofTexte.put(vFichier[j]);
- }
-
- ofTexte << "<FIN>\n\n";
- }
-
- return 0;
+#include <iostream>
+#include <iomanip>
+#include <fstream>
+#include <vector>
+
+using namespace std;
+
+int main(int, char **)
+{
+ int iPosPointeur, iPosTexte;
+ char szPath[2][256];
+ vector<unsigned char> vFichier;
+
+ cout << "Entrez le nom du fichier :";
+ cin >> szPath[0];
+ cout << "Entrez le nom du fichier texte :";
+ cin >> szPath[1];
+
+ cout << "Entrez la position du pointeur (Hexadeciaml) :";
+ cin >> hex >> iPosPointeur;
+ cout << "Entrez la position du texte (Hexadeciaml) :";
+ cin >> hex >> iPosTexte;
+
+ ifstream ifFichier(szPath[0], ios::binary);
+
+ if(ifFichier)
+ {
+ ifFichier.seekg(0, ios::end);
+ vFichier.resize(ifFichier.tellg());
+
+ ifFichier.seekg(0, ios::beg);
+ ifFichier.read((char *) vFichier.begin(), vFichier.size());
+ }
+
+ ofstream ofTexte(szPath[1], ios::binary | ios::trunc);
+
+ for(int i = 0; i < (iPosTexte - iPosPointeur) / 2; i++)
+ {
+ ofTexte << "<PT" << setw(4) << setfill('0') << i << ">\n";
+
+ for(int j = iPosPointeur + vFichier[iPosPointeur + i * 2] +
+ (vFichier[iPosPointeur + i * 2 + 1] * 256); vFichier[j] != 0; j++)
+ switch(vFichier[j])
+ {
+ case 0x01:
+ ofTexte << "<NOM:" << (int) vFichier[++j] << ">";
+ break;
+ case 0x02:
+ ofTexte << "<02>";
+ break;
+ case 0x03:
+ ofTexte << "<03>";
+ break;
+ case 0x04:
+ switch (vFichier[++j])
+ {
+ case 0x02:
+ ofTexte << "<VIOLET>";
+ break;
+ case 0x04:
+ ofTexte << "<VERT>";
+ break;
+ case 0x05:
+ ofTexte << "<BLEU>";
+ break;
+ case 0x06:
+ ofTexte << "<JAUNE>";
+ break;
+ case 0x0F:
+ ofText << "<FINCOULEUR>";
+ break;
+ default:
+ ofTexte << setw(2) << << setfill('0') << hex << vFichier[j];
+ }
+ break;
+ case 0x05:
+ ofTexte << "<05>";
+ break;
+ case 0x06:
+ ofTexte << "<06>";
+ break;
+ case 0x0c:
+ ofTexte << "<NP>\n";
+ break;
+ case 0x0a:
+ ofTexte.put('\n');
+ break;
+ default:
+ ofTexte.put(vFichier[j]);
+ }
+
+ ofTexte << "<FIN>\n\n";
+ }
+
+ return 0;
} \ No newline at end of file