elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  modificacion de archivo y verificacion de existencia no cierra??? ayuda!!!
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: modificacion de archivo y verificacion de existencia no cierra??? ayuda!!!  (Leído 2,439 veces)
kerkox

Desconectado Desconectado

Mensajes: 15



Ver Perfil
modificacion de archivo y verificacion de existencia no cierra??? ayuda!!!
« en: 5 Marzo 2014, 06:01 am »

Hola que tal amigos, lo que sucede es que estoy haciendo un programa que modifica un archivo pero para poder modificarlo primero verifico que exista con el nombre que se va a modificar para no repetir
ejemplo:
*******************************************************
archivo original:                                    fichero.exe

archivo modificado o renombrado:         fichero2.exe

si existe   fichero2.exe   entonces Mostrar mensaje no se puede modificar ya que esta modificado

SINO entonces modificar o renombre por fichero2.exe
********************************************************

y luego hay otra opcion
que dice si desea reestablecerlo
*******************************************************
PARA RESTABLECER CON PREVIA MODIFICAION
archivo original:                                    fichero2.exe

archivo modificado o renombrado:        fichero.exe

si existe   fichero2.exe   entonces modificar o renombre por fichero.exe

SINO entonces  Mostrar mensaje no se puede modificar ya que NO SE HA MODIFICADO
******************************************************

EL PROBLEMA: cuando se realiza una de las opciones primero funciona, pero cuando regresa al menu para selecionar otra opcion no funciona porque muestra el mensaje de error de cada funcion

pero cuando cierro el programa y vuelvo a abrirlo funciona perfectamente la primera vez de ahi en adelante no funciona para nada

una de las funciones que utilizo para verificar si existe es la siguiente:

Código:
#include <fstream>
#include <iostream>

 bool file_exists(const char * f){
    ifstream file;
    file.open(f);
    if(file.fail())
        return false;
    file.close();
    return true;
}
int main()
{
bool j;

bool j= file_exist("c:\\fichero2.exe");

if (j)
{
cout << "No se puede renombrar ya que esta renombreado" << endl;
}
else {
// se ejecuta los comandos de renombre
}

}

##############
Por ahora una solucion burda que he hecho es llamar a un archivo externo en bat para que me cierre el program y lo vuelva a abrir para la solucion pero si alguien me puede dar alguna idea se lo agradezco mucho

P.D si necesitan mas datos solo comenten


En línea

engel lex
Moderador Global
***
Desconectado Desconectado

Mensajes: 15.514



Ver Perfil
Re: modificacion de archivo y verificacion de existencia no cierra??? ayuda!!!
« Respuesta #1 en: 5 Marzo 2014, 06:17 am »

dices "cuando regresa al menú" pero no veo ningún retorno al menú ni ciclos...
solo veo que lo abres y debe correr linealmente, terminar y cerrarse

puedes usar las etiquetas GeSHi para que el codigo sea más legible
Código
  1. #include <fstream>
  2. #include <iostream>
  3.  
  4. bool file_exists(const char * f){
  5.    ifstream file;
  6.    file.open(f);
  7.    if(file.fail())
  8.        return false;
  9.    file.close();
  10.    return true;
  11. }
  12. int main()
  13. {
  14. bool j;
  15.  
  16. bool j= file_exist("c:\\fichero2.exe");
  17.  
  18. if (j)
  19. {
  20. cout << "No se puede renombrar ya que esta renombreado" << endl;
  21. }
  22. else {
  23. // se ejecuta los comandos de renombre
  24. }
  25.  
  26. }


En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
BlackM4ster


Desconectado Desconectado

Mensajes: 499


Error, el teclado no funciona. Pulse F1 para continuar


Ver Perfil WWW
Re: modificacion de archivo y verificacion de existencia no cierra??? ayuda!!!
« Respuesta #2 en: 5 Marzo 2014, 08:49 am »

Código
  1. #include <fstream>
  2. #include <iostream>
  3.  
  4. using namespace std;
  5. bool file_exists(const char * f);
  6.  
  7. int main(){
  8.  
  9. if (file_exists("C:\\fichero2.exe")){
  10. cout << "El archivo existe" << endl;
  11. } else {
  12. cout << "El archivo NO existe" << endl;
  13. }
  14.  
  15. return 0;
  16. }
  17.  
  18. bool file_exists(const char * f){
  19.   fstream file(f);
  20.   return file.good();
  21. }

Aquí tienes tu código funcionando, tienes muchos fallos, revísalos

Editado: Añadida función más sencilla de Amchacon
« Última modificación: 6 Marzo 2014, 08:14 am por BlackM4ster » En línea

- Pásate por mi web -
https://codeisc.com
amchacon


Desconectado Desconectado

Mensajes: 1.211



Ver Perfil
Re: modificacion de archivo y verificacion de existencia no cierra??? ayuda!!!
« Respuesta #3 en: 5 Marzo 2014, 13:35 pm »

Código
  1. bool file_exists(const char * f){
  2.   fstream file;
  3.   file.open(f);
  4.   if(file.fail())
  5.       return false;
  6.   file.close();
  7.   return true;
  8. }

Esta función se puede resumir a:

Código
  1. bool file_exists(const char * f){
  2.   fstream file(f);
  3.   return file;
  4. }

O si te resulta más claro:

Código
  1. bool file_exists(const char * f){
  2.   fstream file(f);
  3.   return file.good();
  4. }
En línea

Por favor, no me manden MP con dudas. Usen el foro, gracias.

¡Visita mi programa estrella!

Rar File Missing: Esteganografía en un Rar
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Detectar existencia de archivo
Programación Visual Basic
nahueld 9 3,291 Último mensaje 10 Septiembre 2008, 05:55 am
por nahueld
[AYUDA]Con Modificacion de Archivo de Texto
Scripting
FranciskoAsdf 4 5,670 Último mensaje 29 Mayo 2010, 00:37 am
por FranciskoAsdf
[AYUDA] Obtener la fecha de modificacion de un archivo
Programación C/C++
maxgeniusgm 1 7,242 Último mensaje 31 Octubre 2012, 00:59 am
por BatchianoISpyxolo
verificar existencia de un archivo dentro de un ftp
Programación Visual Basic
asdexiva 2 4,200 Último mensaje 23 Octubre 2013, 16:03 pm
por asdexiva
Verificar la Existencia de un archivo en 4gl
Programación General
ckrings 1 2,502 Último mensaje 26 Octubre 2018, 23:33 pm
por Shell Root
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines