J'essaie de comprendre la taille d'un fichier en utilisant le code fourni et passer le résultat dans mon objet fichier. Il ne passera que dans la taille du fichier si elle est d'une certaine extension, cette fonction fonctionne parfaitement, le seul problème que je vais avoir est que la taille du fichier que le ifile.tellg() passe à -1 pour chaque taille du fichier.Déterminer la taille du fichier C++
void NonRecursiveProcess(string directory)
{
for(directory_iterator dir_end, dir(directory); dir != dir_end; ++dir)
{
path _path(*dir);
if(!is_directory(_path))
{
for (vector<ExtensionAbstract*>::iterator it = extensionsAbstract.begin() ; it != extensionsAbstract.end(); ++it)
{
if (_path.file_string().substr(_path.file_string().find_last_of(".") + 1) == (*it)->GetExtension())
{
std::ifstream ifile(_path.file_string(), std::ifstream::in | std::ifstream::binary);
ifile.seekg(0, std::ios_base::end);
(*it)->AddkB(ifile.tellg());
(*it)->AddFileCount();
}
}
}
}
}`
Est-ce 'boost :: filesystem'? Ne pouvez-vous pas utiliser ['file_size'] (http://www.boost.org/doc/libs/1_53_0/libs/filesystem/doc/reference.html#file_size)? –
« le seul problème que je vais avoir est que la taille du fichier que le ifile.tellg() passe ». Peut-être pourriez-vous nous dire QUEL est le problème que vous rencontrez? –
Le problème est maintenant déclaré, désolé. – Tas