Buenas, acabo de leer tu mensaje, y solo se me ocurre lo que dices con C, acabo de escribir el código y funciona, queda una cosa así:
Código c:
Ver original#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int cuenta(FILE *);
int main()
{
FILE *fichero=NULL;
char buffer[250];
char *p;
char c;
int posicion=0;
int caracteres;
if(!(fichero
=fopen("text.txt","rt"))) {
return 0;
}
caracteres = cuenta(fichero);
p
=(char *) malloc(caracteres
*sizeof(char));
fseek(fichero
,0,SEEK_SET
); while((c
=fgetc(fichero
))!=EOF
) {
*(p + posicion) = c;
posicion++;
}
return 1;
}
int cuenta(FILE *fichero)
{
char c;
int caracteres=0;
fseek(fichero
,0,SEEK_SET
); while((c
=fgetc(fichero
))!=EOF
) caracteres++;
return caracteres;
}
En el primer getchar se puede ver que en el verctor p se guarda toda la información bien, pero con el comando msg solo imprime una linea del fichero.
Alomejor con el comando type se pueda hacer algo también, de todas formas este comando (msg) a partir de windows vista ya no esta.