no abre un archivo txt [solucionado]

Iniciado por flony, 2 Octubre 2013, 05:31 AM

0 Miembros y 1 Visitante están viendo este tema.

flony

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;
}

si un problema no tiene solucion entonces no es un problema...es algo inevitable

eferion

deberías mirarte la declaración de getline. No devuelve un bool, sino una referencia de tipo ifstream.

ecfisa

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 :)

flony

#3
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
si un problema no tiene solucion entonces no es un problema...es algo inevitable