Hola, soy nuevo por aqui, asi que muchos saludos.
A ver si me podeis resolver este problemilla.
Tengo el siguiente fragmento de codigo en Visual C++:
CFile entrada;
CFileException ex;
char recurso[3];
if (!entrada.Open("a.txt", CFile::modeRead, &ex))
{
// Error de apertura del fichero
TCHAR aperturaError[1024];
ex.GetErrorMessage(aperturaError, 1024);
pDC->TextOut(0,0, aperturaError );
}
else{ // Apertura correcta
pDC->TextOut(0,0, "Archivo abierto" );
int longitud=entrada.SeekToEnd();
for(int i=0; i<longitud;i=i+3)
{
entrada.Seek(i, CFile::begin);
entrada.Read(recurso, 3);
str=recurso;
pDC->TextOut(0,0+25*i,str);
}
entrada.Close();
}
Lo que se supone que deberia hacer es abrir el archivo a.txt (que lo hace), y luego ir leyendo caracteres de 3 en 3 hasta el final del archivo. Por cierto el archivo a.txt contiene esto:
CPU 75
CH1 30
CH2 42.5
CH3 37.25
INA 10
Pues bien, al imprimir el contenido de la variable str con la instruccion: pDC->TextOut(0,0+25*i,str); en cada iteracion, lo que obtengo es lo que en un principio debería pero acompañado de unos caracteres extraños que no se xq salen, es decir se me imprime esto:
CPUÌÜ¿J_l
75ÌÜ¿J_l
etc...
A ver si me echais un cable.
Muchas gracias de antemano.