meine erste Post so krank bleibe bei den Leitlinien so gut wie ich kann!Wie kann ich lesen/schreibe Bytes/Bits zu einer neuen Datei in C++
Im Grunde versucht, eine Methode zum Bearbeiten einer Datei auf der binären Ebene zu machen. Ich habe eine Möglichkeit, die Bytes zu lesen (leider nicht in großen Formaten), aber ich bin fest, wie ich dann die Bytes in eine neue Datei schreiben kann. Ich dachte mir, ich kann die Bytes in hex konvertieren und dann die Datei auf diese Weise schreiben, aber ihre andere Schritt-ID möchte ich vermeiden. Gibt es eine Methode zum Schreiben von Bytes in eine Datei, die Sie vorschlagen können? Wenn möglich, lassen Sie es auch in einem großen Format wie 5 GB schreiben.
Hier ist der Code im zum Umwandeln jede Datei Bytes mit:
#include "stdafx.h"
#include <iostream>
#include <fstream>
using namespace std;
//Variables
const unsigned long long size = 64ULL * 1024ULL * 1024ULL;
unsigned long long file[size];
class ByteManager
{
char const* input;
public:
void set_values(char const*);
char* ConvertToBytes()
{
ifstream streamData(input);
streamData.seekg(0, ios::end);
size_t len = streamData.tellg();
char* Bytes = new char[len];
streamData.seekg(0, ios::beg);
streamData.read(Bytes, len);
streamData.close();
return Bytes;
//return 0;
}
};
void ByteManager::set_values(char const* a)
{
input = a;
};
Hinweis: Ich kann die Hex-Klasse abgibt, dass in der Tat ist die beste Methode, nach unten zu gehen.
Auch danke im Voraus für jeden Hinweis/Feedback/Code, der vorgelegt wird! ~ nobodyshome
Arbeiten Sie einfach an einem kleineren Puffer und verarbeiten Sie die Datei in Chunks. –
@ πάνταῥεῖ Wie würde ich eine dieser Optionen wählen? Wo kann ich mehr über diese erfahren? – nobodyshome