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

 

 


Tema destacado: AIO elhacker.NET 2021 Compilación herramientas análisis y desinfección malware


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Lectura de Línea a Línea de un archivo de números enteros en C++
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Lectura de Línea a Línea de un archivo de números enteros en C++  (Leído 9,829 veces)
julian21931500

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Lectura de Línea a Línea de un archivo de números enteros en C++
« en: 25 Febrero 2015, 00:15 am »

Ante que todo un cordial saludo a todos los programadores de esta famosa comunidad, soy nuevo en este foro y estoy creando este tema porque tengo un problema para leer linea a linea un archivo de números enteros.

El problema es que tengo un archivo, por ejemplo:

1 2 3 5 8 5
4 5 6 8
1 2 3

lo que quiero hacer es leer linea a línea cada número y guardarlos en una cola, he intentando numerosas forma pero siempre me termina leyendo todos los datos hasta el Fin del Archivo, he probado leyendo y comparando cada dato que leo con el '  \n ' pero no me funciona, también intenté haciendo esto while (entrada >> n) y tampoco me funciona, si alguien me pudiera facilitar el código se lo agradecería (No es flojera y tampoco la razón no es que no he investigado ni nada, por el contrario desde ayer ando en esto y no he podido solventar ese problema), repito, no es flojera si me pudieran facilitar el código y explicarme el xq es así se los agradecería de verdad ya que lo necesito. Gracias de antemano a todos los que me puedan ayudar y a los que no gracias también por tomarse el tiempo en leer el tema.


En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.412


ASMático


Ver Perfil WWW
Re: Lectura de Línea a Línea de un archivo de números enteros en C++
« Respuesta #1 en: 25 Febrero 2015, 00:20 am »

Código
  1. ifstream f(...);
  2. string t;
  3. getline(f,t); //Linea del archivo hasta salto de linea


En línea

julian21931500

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Re: Lectura de Línea a Línea de un archivo de números enteros en C++
« Respuesta #2 en: 25 Febrero 2015, 00:38 am »

Ivancea96 antes que nada gracias por  responder mi pregunta tan rápido, tengo una duda, la función getline no es solo para datos de tipos caractér?
En línea

julian21931500

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Re: Lectura de Línea a Línea de un archivo de números enteros en C++
« Respuesta #3 en: 25 Febrero 2015, 00:51 am »

Gracias, ahora sí puedo leer línea a línea, pero como hago para guardar cada número en una cola? con el getline() lee toda la línea completa y quiero es ir encolando cada número de cada línea en una cola valga la redundancia.
En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.412


ASMático


Ver Perfil WWW
Re: Lectura de Línea a Línea de un archivo de números enteros en C++
« Respuesta #4 en: 25 Febrero 2015, 01:01 am »

Ahora ve leyendo cada linea y ve sacando los numeros. Tienes funciones como stoi() para transformar cadenas a números. Para separar, tienes, por ejemplo, string.find().
En línea

julian21931500

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Re: Lectura de Línea a Línea de un archivo de números enteros en C++
« Respuesta #5 en: 25 Febrero 2015, 01:05 am »

Ok, y esta sería la forma "eficiente" de hacer eso? no hay un más directa con la cuál yo pueda ir leyendo número a número e ir encolando de una vez hasta encontrada el fin de línea ( " \n " ) y luego comenzar con la siguiente línea?
En línea

rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: Lectura de Línea a Línea de un archivo de números enteros en C++
« Respuesta #6 en: 25 Febrero 2015, 02:36 am »

Formas para extraer los números de la linea de texto hay varias, por ejemplo utilizando un objeto de la clase istringstream para tratar la linea como un stream:
Código
  1. #include <sstream>
  2. using std::istringstream;
  3.  
  4. // ...
  5.  
  6. string linea = "1 2 3 4";
  7. int num;
  8.  
  9. // ...
  10.  
  11. istringstream in(linea);
  12. while (in >> num)
  13.   cout << num << endl;

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
julian21931500

Desconectado Desconectado

Mensajes: 8


Ver Perfil
Re: Lectura de Línea a Línea de un archivo de números enteros en C++
« Respuesta #7 en: 25 Febrero 2015, 04:11 am »

Buenas noches amigos por fin logré hacer lo que quería después de horas de intentos y búsqueda en la web  ;-) ;-) la verdad no se si para hacer una simple lectura (Digo simple por como se ve a simple vista) pero en realidad no lo fue (al menos para mí) hay que hacer tantas cosas como las que hice.

A continuación dejo el código y unas capturas de pantalla con el fin de colaborar con personas que quieran hacer lo mismo y no tarden horas en hacer este "simple" código.


Código, Archivo de Prueba y Resultado:

   

Código:



Gracias a todos por su ayuda. Saludos!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
leer archivo de texto linea a linea
Programación Visual Basic
SheKeL_C$ 2 4,059 Último mensaje 18 Febrero 2006, 17:08 pm
por SheKeL_C$
Leer de la entrada estandar linea por linea « 1 2 »
Programación C/C++
Delraich 15 11,700 Último mensaje 6 Julio 2010, 19:53 pm
por MIG80
Lectura última línea
Programación C/C++
javahat 2 3,183 Último mensaje 30 Septiembre 2010, 11:54 am
por Littlehorse
Solucionado [python] Salto de linea en lectura de fichero
Scripting
tonilogar 6 17,383 Último mensaje 26 Diciembre 2010, 01:28 am
por tonilogar
Numeros de línea en etiquetas de código GeSHi.
Sugerencias y dudas sobre el Foro
avesudra 2 4,185 Último mensaje 4 Septiembre 2012, 23:28 pm
por avesudra
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines