Ich frage mich, wie kann ich eine Datei öffnen (jpg, txt, zip, CPP, ...) als Binärdatei. Ich möchte die Bytes sehen, bevor sie von dem Programm formatiert werden könnten, das normalerweise dieses Dateiformat interpretiert. Es ist möglich? Wie könnte ich das in C++ machen? Danke.eine beliebige Datei als Binärdatei
0
A
Antwort
1
Sie können POSIX verwenden (C Art und Weise funktionieren aber in C++) Funktionen, dies zu tun:
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
int fd = open("file.bin", O_RDONLY); //Opens the file
if(fd<0){
perror("Error opening the file");
exit(1);
}
char buf[1024];
int i;
ssize_t rd;
for(;;){
rd = read(fd, buf, 1024);
if(rd==-1) //Handle error as we did for open
if(rd==0) break;
for(i = 0; i < rd; i++)
printf("%x ", buf[i]); //This will print the hex value of the byte
printf("\n");
}
close(fd);
0
Sie die alte C-Schnittstelle verwenden (fopen()
, etc.), aber die C++ Art und Weise basiert auf Datei-Stream : fstream
, ifstream
, ofstream
, wfstream
usw.
um im binär-Modus zu öffnen (und Textmodus nicht) können Sie die Flagge std::ios::binary
verwenden.
von Beispiel können Sie eine Datei (ein Zeichen zu einem Zeitpunkt) lesen in der folgenden Art und Weise
#include <fstream>
#include <iostream>
int main()
{
char ch;
std::ifstream fl("file.log", std::ios::binary);
while (fl.read(&ch, sizeof(ch)))
std::cout << "-- [" << int(ch) << "]" << std::endl;
return 0;
}
ps: sorry für mein schlechtes Englisch
Verwandte Themen
- 1. Wie sage ich Subversion, eine Datei als Binärdatei zu behandeln?
- 2. Packing Gatling Testsuite als eine ausführbare Binärdatei
- 3. Öffnen Sie eine beliebige Datei mit VBScript
- 4. Dynamische Binärdatei aus Datei
- 5. Warum sollte .pbxproj-Datei in Versionskontrollsystemen als Binärdatei behandelt werden?
- 6. C# Beliebige Funktion als Parameter
- 7. Speichern eines Datenrahmens als Binärdatei
- 8. Binärdatei als Zeichenfolge in Ruby lesen
- 9. konvertieren Hex-Datei in Binärdatei
- 10. Ausgabe einer Binärdatei aus PHP als eine JavaScript-Binärzeichenfolge
- 11. C - Schreiben eines Puffers als Binärdatei (wav)
- 12. Wie erzeuge ich eine PDF-Datei aus einer Binärdatei?
- 13. opengl passen eine beliebige Form
- 14. eine Binärdatei HEX Darstellung mit der Batch-Datei
- 15. die analysierte Binärdatei muss eine ausführbare Datei sein
- 16. Killing eine Haskell-Binärdatei
- 17. Wie verwende ich eine beliebige Zeichenfolge als Sperre in C++?
- 18. Wie können Sie Mercurial (hg) zwingen, eine Datei als Binärdatei zu behandeln?
- 19. Extrahieren Sie die Miniaturansicht für eine beliebige Datei in Windows
- 20. make: Erstelle eine Test-Binärdatei für jede Datei im Testverzeichnis
- 21. wie man Binärdatei Standardpfad Datei in C#
- 22. NSData als Binärdatei in einem NSString anzeigen
- 23. Python wie in eine Binärdatei schreiben?
- 24. Wie erstellt man eine Binärdatei
- 25. Python: Int in eine Binärdatei schreiben
- 26. So laden Sie eine Binärdatei mit URLConnection
- 27. Eine binäre .dat-Datei als Array lesen
- 28. Cropping eine beliebige wpf Geometrie
- 29. Wie wird eine Binärdatei in SFTP übertragen?
- 30. nicht Binärdatei
'read()' 'kehrt ssize_t', nicht "int". –
Sie haben Recht, ich bearbeite – Omar
@Omar - in C++ können Sie auch die Standard-ANSI-C 'fopen()' Schnittstelle verwenden – max66