Problem, bin schon frustriert.
-
Vielleicht kann mir wer helfen
hab schon im komplette forum gesucht.
und zwar die grösse der Datei die eingelesen wird stimmt nicht.
kann mir wer einen tipp geben.
ist eine einfache textdatei.hier habt ihr meinen code...
Allerdings nur die Cpp. Datei ohne header.
#include "SearchEdit.h" SearchEdit::SearchEdit(const char * filename):m_Buffer(NULL),m_newBuff(NULL), m_filename(NULL), m_Gefunden(0), m_filesize(0), m_newsize(0) { // Überprüfen ob die Datei existiert std::fstream file(filename, std::ios::in|std::ios::binary); m_filename=filename; std::cout << "hallo"; // Datei existiert nun die Grösse heraus finden file.seekg(0, std::ios::end); unsigned long m_filesize = std::streamoff(file.tellg()); file.seekg(0, std::ios::beg); file.close(); std::cout << m_filesize; return; } SearchEdit::~SearchEdit() { // Objekte wieder freigeben und Speicherlecks verhindern if (m_Buffer !=NULL) { delete[] m_Buffer; m_Buffer=NULL; } } int SearchEdit::Count() { return m_Gefunden; } bool SearchEdit::Do() { // Nun beginnt das lesen; /* m_Buffer=new char[m_filesize+1]; // Der Buffer wurde nun erstellt // Lesen kann beginnen std::fstream file(m_filename); //Read file.read(m_Buffer,m_filesize); m_Buffer[m_filesize]='\0'; delete[] m_Buffer; m_Buffer=NULL; file.close(); */ return true; } char* SearchEdit::replace(char *buff) { for (int i=0; i>m_filesize;i++); { std::cout << i; std::cout <<m_Buffer[i]; } return buff; }
Ich brauch hilfe...
irgendwas stimmt mit dem konstruktor nicht. hilfe..
was kann da nur falsch sein??
-
is normal, dass die größe etwas größer ist, als die datei selber. kann man auch nicht verhindern,ist halt so.
-
Es funktioniert...
Wenn du oben siehst hab ich keine fehler kontrolle gemacht.
weil ich mir dachte das ich die Datei ins gleiche verzeichnis kopier wie die anwendung.ums kurz auszutesten.
nach dem ich deine Antwort bekommen habe.
fügte ich einfach den Code für die Fehler kontrolle ein.und die Datei hatte das Programm nicht gefunden.
Danke Danke-