Test Foro de elhacker.net SMF 2.1

Programación => Programación C/C++ => Mensaje iniciado por: flony en 2 Octubre 2013, 05:31 AM

Título: no abre un archivo txt [solucionado]
Publicado por: flony en 2 Octubre 2013, 05:31 AM
hola como están, bueno la verdad esta duda surge que por leer el tema de uno de los chicos decidí trabajar con archivos pero en c++, se supone es un txt que tiene nombres separados por comas, la cuestión es que siempre salta al final y no me da un resultado, error"
#include<iostream>
#include<fstream>
#include<string>

using namespace std;

int main()
{
string linea;
string nombre;
char a=',';
cout<<"ingrese el nombre buscado"<<endl;
getline(cin, nombre);
ifstream miArchivo ("nombres.txt");
if (miArchivo.is_open())
{
while (getline(miArchivo, linea,a ))
{
if (nombre==linea)
{
cout<<"el nombre buscado esta presente "<<endl;
}
else
{
cout<<"el nombre no esta"<<endl;
}
}
miArchivo.close();
}
else
{
cout<<"algo paso"<<endl;
}
getchar();
return 0;
}

Título: Re: no abre un archivo txt
Publicado por: eferion en 2 Octubre 2013, 10:02 AM
deberías mirarte la declaración de getline. No devuelve un bool, sino una referencia de tipo ifstream.
Título: Re: no abre un archivo txt
Publicado por: ecfisa en 2 Octubre 2013, 11:46 AM
Hola.

Código (cpp) [Seleccionar]

#include<iostream>
#include<fstream>
#include<string>
#include<cstdlib>

using namespace std;

int main()
{
  ifstream miArchivo ("nombres.txt", ifstream::in);
  string linea, nombre;
  bool found = false;

  if (!miArchivo.is_open()) {
    cout << "Error abriendo nombres.txt";
    return EXIT_FAILURE;
  }

  cout << "ingrese el nombre buscado: ";
  getline(cin, nombre);

  while (getline(miArchivo, linea, ','))
    if (linea.find(nombre) != string::npos)
      found = true;

  if (found)
    cout << "el nombre buscado esta presente ";
  else
    cout << "el nombre buscado no esta presente";

  miArchivo.close();

  cout << endl;
 
  return EXIT_SUCCESS;
}


Saludos :)
Título: Re: no abre un archivo txt[solucionado]
Publicado por: flony en 2 Octubre 2013, 13:53 PM
buen día a todos, ayer en un momento de sueño  :-X :-X, no me di cuenta de una cosa muy importante, "la ubicación del txt ", ok no es el código mas excelente  :silbar: :silbar: :silbar:
pero sale  ;-) ;-) ;-)
bueno como modo de aporte para aquellos que usan visual c++, cuando hacen un proyecto de consola hace como 20 carpetas y uno no sabe donde va el famosos txt, así que acá una imagen para que sepan donde se ubica
http://subefotos.com/ver/?94d6783d5797d33fdbc1df50266b18a7o.jpg (http://subefotos.com/ver/?94d6783d5797d33fdbc1df50266b18a7o.jpg)