Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

Ficheros

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: Ficheros Responder citando

Compilo sin las opciones de use_dynamic RTL y Build with runtime packages y en la siguiente línes de codigo me da una excepcion antes de generar el ejecutable, ¿alguien sabe como solucionarlo?.



Código:

fstream Flog;
FLog.open("escr.txt",ios_base::out|ios_base::trunc);


al parecer tiene problemas con el ios_.c, no se si os ha pasado y la forma de solucionarlo.

Gracias
Volver arriba
Mensaje    Asunto: Responder citando

Hola.

¿Has comprobado que el fichero existe?
Fíjate que tal y como lo tienes escrito (función open), se supone que tu fichero está en el mismo directorio que la aplicación. Asegúrate que existe, que está bien escrito, y por ahora prueba a poner la operación de abrir el fichero dentro de un bloque try...catch().

Un saludo.
_________________
Nunca digas "Es imposible" sin intentarlo antes.
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

El fichero no existe lo estoy creando en ese momento, ¿debe existir con antelación a su creación?, si es así ¿como se crea el fichero?
Volver arriba
Mensaje    Asunto: Responder citando

fstream Flog;
FLog.open...

sera por la L mayuscula? Flog no es igual a FLog
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

No offset no es por eso, he comprobado y lo tengo escrito en ambos sitios con mayuscula, gracias por tu ayuda
Volver arriba
Mensaje    Asunto: Responder citando

Hola Julito.

Perdona, no me di cuenta de que estabas creando un fichero para escritura. Efectivamente, no tiene porqué existir previamente.
Cita:
fstream FLog;
FLog.open("escr.txt",ios_base::out|ios_base::trunc);
Yo no sé exactamente qué hace "trunc". Si lo que quieres hacer es crear un fichero vacío para escribir en él, y si existe sobreescribirlo, yo uso siempre otra forma (debe ser más antigua, porque nunca la he visto por el foro, pero NUNCA me ha fallado):
Código:
ofstream out;
out.open("escr.txt");
O bien, en la forma abreviada:
Código:
ofstream out("escr.txt");
Explicación:
- ofstream: o de Output; f de File y stream de stream: fichero de salida (principalmente los llamo out porque empecé aprendiendo pascal (input/output).
Y del mismo modo:
- ifstream: i de Input; f de File y stream de stream: fichero de entrada (principalmente los llamo in porque empecé aprendiendo pascal (input/output).
El archivo de cabecera que debes incluir es: #include "fstream.h"
Espero que te sirva.

Un saludo.
_________________
Nunca digas "Es imposible" sin intentarlo antes.
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.