Здравствуйте, R1K0, Вы писали:
RK>Всем привет. Может я туплю, но почему-то проблема со строками и чтением их из файла.
RK>RK>class cCachedFile
RK>{
RK> public:
RK> string url;
RK> string fileName;
RK> string pathToFile;
RK> UINT entryID;
RK> UINT sessionID;
RK> ULONGLONG fileSize;
RK> BOOL wasDownloaded;
RK>};
RK>
RK>Скажите, пожалуйста, что тут не так, ибо когда файл считан в vector, то поля url и pathToFile содержат мусор, тогда как все все остальные (включая fileName) содержат именно то, что должны.
std::string неслзя тупо взять и записать как структуру, потому-что это полнценный класс, с указателями и т.д.
И вообще нехорошо записывать так как ты делаешь. если уж нужно что-то в поток записать, то переопредели операторы << и >> для работы с твоим классом
ofstream& operator<< (ofstream& ofs, cCachedFile& a)
{
ofs << a.url;
ofs << a.fileName;
...
return ofs;
}
ifstream& operator >> (ifstream& ifs, cCachedFile& a)
{
ifs >> a.url;
ifs >> a.fileName;
...
return ifs;
}
запись:
metaFile << _record;
чтение:
metaFile >> _record;
UNIX way — это когда тебе вместо туалетной бумаги дают топор, рубанок и карту близлежащего леса