Copiez-vous les données de fstream vers stringstream sans tampon?

Est-il de toute façon je peux transférer des données à partir d'un fstream (un fichier) pour un stringstream (un flux de données dans la mémoire)?

Actuellement, je suis en utilisant un tampon, mais cela nécessite le double de la mémoire, car vous avez besoin de copier les données dans une mémoire tampon, puis copiez le contenu du tampon à la stringstream, et jusqu'à la suppression de la mémoire tampon, les données sont copiées dans la mémoire.

std::fstream fWrite(fName,std::ios::binary | std::ios::in | std::ios::out);  
    fWrite.seekg(0,std::ios::end); //Seek to the end  
    int fLen = fWrite.tellg(); //Get length of file  
    fWrite.seekg(0,std::ios::beg); //Seek back to beginning  
    char* fileBuffer = new char[fLen];  
    fWrite.read(fileBuffer,fLen);  
    Write(fileBuffer,fLen); //This writes the buffer to the stringstream  
    delete fileBuffer;`

Personne ne sait comment je peux écrire un fichier entier à un stringstream sans l'aide d'un inbetween tampon?

source d'informationauteur Brad | 2010-10-31