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

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Duda con Archivos en C++
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Duda con Archivos en C++  (Leído 2,202 veces)
k3r00t

Desconectado Desconectado

Mensajes: 17



Ver Perfil
Duda con Archivos en C++
« en: 29 Julio 2012, 01:18 am »

Buenas, alguno sabe que sentencia puedo usar en C++ para verificar si cierto archivo existe y dependiendo de la respuesta hacer cierta accion? Basicamente lo que necesito es:

Si(Archivo_Existe_en_la_ruta)
  hago_algo()
sino
  hago_otra_cosa()

He leido en varios sitios pero ninguno resuelve mi duda, de antemano gracias.

PD: No me refiero a si el archivo pudo ser abierto con exito o no, sino que si existe o no, gracias!!


En línea

Queta

Desconectado Desconectado

Mensajes: 267



Ver Perfil
Re: Duda con Archivos en C++
« Respuesta #1 en: 29 Julio 2012, 01:43 am »

Puedes usar fopen (http://www.cplusplus.com/reference/clibrary/cstdio/fopen/) perfectamente.


En línea

"Intenta no volverte un hombre de éxito, sino volverte un hombre de valor." Albert Einstein.
rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: Duda con Archivos en C++
« Respuesta #2 en: 29 Julio 2012, 04:33 am »

No me refiero a si el archivo pudo ser abierto con exito o no, sino que si existe o no,
Utilizando solo la biblioteca estándar de C o C++ no es posible realizar la operación que mencionas, debes utilizar el API de tu sistema operativo.


Puedes usar fopen perfectamente.
No es correcto utilizar "fopen" porque:

A) Si esta tiene éxito el archivo existe, OK.
B) Si no tiene éxito no se puede asumir lo contrario (el archivo no existe) ya que la función puede fallar por otras razones (falla del dispositivo, falta de privilegios, etc.).

Un saludo
En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
ecfisa

Desconectado Desconectado

Mensajes: 114


Ver Perfil
Re: Duda con Archivos en C++
« Respuesta #3 en: 29 Julio 2012, 08:21 am »

Hola k3r00t.

Si estas utilizando windows podes utilizar la función API FindFirstFile , por ejemplo:

Código
  1. #include <stdio.h>
  2. #include <windows.h>
  3.  
  4. bool FileExists(const TCHAR *aName);
  5.  
  6. int main() {
  7.  if (FileExists("C:\\ARCHIVO.TXT"))
  8.    printf("Existe, hacer algo");
  9.  else
  10.    printf("No existe, hacer otra cosa");
  11.  return 0;
  12. }
  13.  
  14. bool FileExists(const TCHAR *aName) {
  15.  WIN32_FIND_DATA lpFindFileData;
  16.  
  17.  if (FindFirstFile(aName, &lpFindFileData ) == INVALID_HANDLE_VALUE)
  18.    return false;
  19.  return true;
  20. }
  21.  

Saludos.
« Última modificación: 29 Julio 2012, 08:37 am por ecfisa » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Duda con archivos .act
Multimedia
bob76 1 2,009 Último mensaje 16 Julio 2005, 15:04 pm
por Songoku
Archivos .sis [duda]
Hacking Mobile
skapunky 4 13,659 Último mensaje 4 Febrero 2006, 15:50 pm
por SirGraham
duda con archivos
Programación Visual Basic
Mr.Chispa 2 1,480 Último mensaje 27 Septiembre 2006, 10:07 am
por Mr.Chispa
duda con archivos .res y .rc
Programación Visual Basic
Anteros 6 2,827 Último mensaje 6 Diciembre 2007, 04:27 am
por cobein
Duda con archivos NRG
Software
Bender-Deicide 4 3,911 Último mensaje 21 Febrero 2008, 16:51 pm
por Nakp
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines