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

 

 


Tema destacado: (TUTORIAL) Aprende a emular Sentinel Dongle By Yapis


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Lectura de fichero de texto en c++ el programa no ejecuta
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Lectura de fichero de texto en c++ el programa no ejecuta  (Leído 2,380 veces)
mari2diaz

Desconectado Desconectado

Mensajes: 24


Ver Perfil
Lectura de fichero de texto en c++ el programa no ejecuta
« en: 16 Marzo 2022, 04:48 am »

lo que quiero hacer es leer estas 2 variables de un fichero de texto

Proceso1   6
Proceso2   7
Proceso3   2
Proceso4   10

pero el programa no se ejecuta, y no se que estoy haciendo mal, la cola si funciona ya la probé sin datos del fichero

Código
  1. std::ifstream archivoProcesos("Procesos.txt");
  2. NodoProceso* Cola;
  3. std::string linea;
  4. std::string nombreProceso;
  5. int tiempoCPU;
  6. for(std::string proceso; std::getline(archivoProcesos, linea); ){
  7.  
  8. std::istringstream datosProceso(linea);
  9.  
  10. for(int columna = 0; std::getline(datosProceso, proceso, ' '); columna++){
  11. switch(columna){
  12. case 0:
  13. nombreProceso = proceso;
  14. break;
  15. case 1:
  16. tiempoCPU = std::stoi(proceso);
  17.    break;
  18. }
  19. }
  20.                Cola->encolar(nombreProceso, tiempoCPU);
  21. }


« Última modificación: 16 Marzo 2022, 04:53 am por mari2diaz » En línea

DarkSun812

Desconectado Desconectado

Mensajes: 19


Ver Perfil
Re: Lectura de fichero de texto en c++ el programa no ejecuta
« Respuesta #1 en: 17 Marzo 2022, 03:44 am »

Soy nuevo en esto de c++ y mi martirio ha sido la lectura de ficheros, pero en esa busqueda he encontrado una manera de leer los archivos de texto mucho mas sencilla. Supongamos que tienes un archivo de texto con el siguiente formato.

colum11 colum12
colum21 colum22
colum31 colum32
colum41 colum42

Si ejecutas el siguiente codigo podras acceder a cada columna.
Código
  1. char x,y;
  2. string filename("archivo.txt");
  3. ifstream input_file(filename);
  4. while(input_file >> x >> y)
  5. {
  6. cout << x << ' ' << y << endl;
  7. }
  8.  

Con el codigo anterior el item de la columna 1 de la primera fila se guardara en la variable x y la columna dos se guardara en la columna y. El codigo te deberia dar una salida similar a la siguiente.
Citar
colum11 colum12
colum21 colum22
colum31 colum32
colum41 colum42

Con lo que ahora puedes trabajar cada elemento como quieras.





Código
  1. std::ifstream archivoProcesos("Procesos.txt");
  2. NodoProceso* Cola;
  3. std::string linea;
  4. std::string nombreProceso;
  5. int tiempoCPU;
  6. for(std::string proceso; std::getline(archivoProcesos, linea); ){
  7.  
  8. std::istringstream datosProceso(linea);
  9.  
  10. for(int columna = 0; std::getline(datosProceso, proceso, ' '); columna++){
  11. switch(columna){
  12. case 0:
  13. nombreProceso = proceso;
  14. break;
  15. case 1:
  16. tiempoCPU = std::stoi(proceso);
  17.    break;
  18. }
  19. }
  20.                Cola->encolar(nombreProceso, tiempoCPU);
  21. }

Puede ser que el error este en el for, ya que estoy viendo que en la segunda llamada de este
Código
  1. for(int columna = 0; std::getline(datosProceso, proceso, ' '); columna++){
  2.  

Creo estas encerrando en la variable proceso el contenido del getline, intenta crear una variable tipo string a parte y ponla ahi en vez de usar proceso. OJO repito que no conozco mucho de c++ Solo estoy dando una idea segun los problemas que me han dado a mi codigos anteriores. Segundo punto, seguro de que la funcion getline debe usarse en ese caso?? Me refiero a cuando la usas por segunda vez con la variable proceso.


« Última modificación: 17 Marzo 2022, 11:08 am por Eternal Idol » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Error en lectura de Fichero
Java
Afsoon 8 7,189 Último mensaje 14 Septiembre 2010, 18:26 pm
por Debci
El programa se ejecuta en el localhost pero en el servidor no se ejecuta
PHP
ferarteclasico 2 4,232 Último mensaje 8 Julio 2011, 01:38 am
por дٳŦ٭
Programa para crear un fichero nuevo al q s le añada el texto contenido en otros
Scripting
tenteyu 0 1,814 Último mensaje 22 Marzo 2012, 23:47 pm
por tenteyu
Lectura fichero SAV (Hexadecimal)
Java
HelThunder 2 2,081 Último mensaje 29 Diciembre 2013, 19:14 pm
por ThinkByYourself
Problema lectura fichero
Java
Thryks 2 2,187 Último mensaje 14 Marzo 2014, 16:48 pm
por 1mpuls0
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines