Ho un file txt che leggo tramite fstream, in questo modo

codice:
	ifstream file;
	file.open("F:/msg/mes.msg",ios::in);
	file.seekg(0,ios::end);

	long Len = file.tellg();
	
	char *stringa = new char[Len];
	file.seekg(0,ios::beg);
	file.read(stringa,Len);
	string Stringa = stringa;
	delete[] stringa;
	file.close();
La lettura avviene bene, ma alla fine del file mi ritrovo alcuni YYYYYIIIYI e simboli strani, comunque non contenuti nel file, come se ci fosse un eccesso nella lettura.
Ho provato altri metodi (come file.get(), ma acquisire un carattere per volta è lentissimo e comunque prende i caratteri in piu').

Ho provato anche con le api di C, ma, nonostante ha lo stesso problema, sembra non riuscire a leggere (in una sola volta) oltre un certo numero di caratteri.
Suggerimenti?