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

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


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

Desconectado Desconectado

Mensajes: 43



Ver Perfil
[C++] Necesito ayuda con "getline"
« en: 15 Noviembre 2016, 06:27 am »

Hola de nuevo!
Tengo un problema que quiero resolver. Quiero leer un fichero, con ifstream, y getline, lo que pasa es que no puedo leer una linea especifica, se puede hacer eso?

Intente con If pero no me sale :( quisiera que por favor me ayudaran!

Aqui dejo el codigo
Código
  1. #include <iostream>
  2. #include <fstream>
  3.  
  4.  
  5. using namespace std;
  6.  
  7.  
  8. int main(){
  9. string leeArchivo;
  10. char respuesta1;
  11. char respuesta2;
  12.  
  13. ifstream file("ejemplo.txt");
  14. getline(file, leeArchivo);
  15. if(leeArchivo == "puede volar?"){
  16. cout<<leeArchivo<<endl;
  17. }
  18. cin>>respuesta1;
  19. if(respuesta1 == 'n'){
  20. while(getline(file, leeArchivo)){
  21. if(leeArchivo == "puede ladrar?"){
  22. cout<<leeArchivo<<endl;
  23. }
  24. }
  25. cin>>respuesta2;
  26. if(respuesta2 == 'n'){
  27. while(getline(file, leeArchivo)){
  28. if(leeArchivo == "gato"){
  29. cout<<leeArchivo<<endl;
  30. }
  31. }
  32. }
  33. if(respuesta2 == 's'){
  34. getline(file, leeArchivo);
  35. if(leeArchivo == "perro"){
  36. cout<<leeArchivo<<endl;
  37. }
  38.  
  39. }
  40. }
  41. else{
  42. getline(file, leeArchivo);
  43. if(leeArchivo == "pajaro"){
  44. cout<<leeArchivo<<endl;
  45. }
  46. }
  47.  
  48. file.close();
  49. return 0;
  50. }
  51.  
No se si el codigo esta bien, si por favor me pudieran ayudar seria genial!


En línea

Aquellos que estan locos como para pensar que pueden cambiar el mundo , son los que lo hacen.
dato000


Desconectado Desconectado

Mensajes: 3.034



Ver Perfil
Re: [C++] Necesito ayuda con "getline"
« Respuesta #1 en: 15 Noviembre 2016, 22:15 pm »

prueba con esto:

Código
  1. #include <iostream>
  2. #include <fstream>
  3. #include <string>
  4. #include <stdlib.h>
  5.  
  6. using namespace std;
  7.  
  8. int main(int argc, char** argv) {
  9.    string linea;
  10.    ifstream archivoLeido ("archivo.txt.");
  11.    int numeroLinea = 1;
  12.  
  13.    if(archivoLeido)
  14.    {
  15.        while(getline (archivoLeido, linea) )
  16.        {
  17.            if(linea == "colombia Vs argentina"){
  18.                cout << "linea buscada: " << linea <<endl;
  19.                cout << "Se encuentra en la linea numero: " << numeroLinea << endl;
  20.            }
  21.            numeroLinea++;
  22.        }
  23.  
  24.    }
  25.    else
  26.        cout<<"No se pudo abrir el archivo";
  27.  
  28.    return 0;
  29. }
  30.  

Ejemplo:

Archivo.txt
Citar
holacolombiaholacolombiaholacolombia
hola
hola
hola
colombia Vs argentina
hola
hola
hola colombia




En línea


ianmorar03

Desconectado Desconectado

Mensajes: 43



Ver Perfil
Re: [C++] Necesito ayuda con "getline"
« Respuesta #2 en: 17 Noviembre 2016, 20:37 pm »

prueba con esto:

Código
  1. #include <iostream>
  2. #include <fstream>
  3. #include <string>
  4. #include <stdlib.h>
  5.  
  6. using namespace std;
  7.  
  8. int main(int argc, char** argv) {
  9.    string linea;
  10.    ifstream archivoLeido ("archivo.txt.");
  11.    int numeroLinea = 1;
  12.  
  13.    if(archivoLeido)
  14.    {
  15.        while(getline (archivoLeido, linea) )
  16.        {
  17.            if(linea == "colombia Vs argentina"){
  18.                cout << "linea buscada: " << linea <<endl;
  19.                cout << "Se encuentra en la linea numero: " << numeroLinea << endl;
  20.            }
  21.            numeroLinea++;
  22.        }
  23.  
  24.    }
  25.    else
  26.        cout<<"No se pudo abrir el archivo";
  27.  
  28.    return 0;
  29. }
  30.  

Ejemplo:

Archivo.txt



Esta muy interesante, deberia de probar eso, pero es para saber cual linea esta leyendo, y saber que en que numero de linea se encuentra la frase, pero me gustaria saber como hace uno para imprimir una linea en especifico!
En línea

Aquellos que estan locos como para pensar que pueden cambiar el mundo , son los que lo hacen.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines