C/Visual C - Ayuda: CString y Archivos

 
Vista:

Ayuda: CString y Archivos

Publicado por Francisco Massó (2 intervenciones) el 06/09/2001 16:34:58
Saludos de ante mano...

Tengo un problema resulta que estoy leyendo el puerto serial de la computadora, y este me devuelve la informacion en formato de CString hasta ahora puedo guardar perfectamente, el contenido en un archivo usando fwrite(prueba, prueba.getlength(), 1,a); donde prueba esta definido como CString...

El problema es el siguiente cuando trato ahora de leer el archivo (se que este se grabo perfectamente porque cuando lo veo con un editor hexadecimal, veo claramente que el contenido esta correcto).. bien estoy usando la instruccion fread(prueba2,sizeof(char),1,b); donde prueba2 esta definido como un CString, al compilar en VC++ 6, se genera un error que dice +/- asi no puede convertir char to *void o algo por el estilo...
Si alguien me puede decir como leer el archivo y grabar el contenido en una variable de tipo CString o en otra si que pierda datos se lo agradezco...

Atte. Francisco Massó
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ayuda: CString y Archivos

Publicado por Oscar (9 intervenciones) el 07/09/2001 15:53:16
Si queres procesar el archivo 1 byte a la vez, te sugiero que uses directamente esta instrucción

char nCaracter;
fread(&nCaracter,sizeof(char),1,b);

Si luego, queres almacenar los datos en un CString, podes hacer lo siguiente:
sBuff += nCaracter; despues de cada fread , definiendo sBuff de esta forma:CString sBuff;

La función fread, espera como primer parámetro un puntero del tipo void*, y un objeto CString no tiene un operador de conversión que te permita hacerlo.

Si como resultado de la lectura del Puerto Serie obtenes un CString, te sugiero que veas la documentaión de las clases CFile, y CArchivo. El objeto CArchivo posee funciones que te permite grabar (WriteString) y leer (ReadString) un objeto CString en forma directa.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar