Grupo de C++
Publico Grupo
Publico Grupo
Active 20 horas
Este grupo esta relacionado con nuestro curso profesional de C++. Aquí se comparten temas... View more
Publico Grupo
COMO SACAR DATOS DE UN TXT y PASARLOS A UN ARRAY EN C++
Etiquetado: C++
COMO SACAR DATOS DE UN TXT y PASARLOS A UN ARRAY EN C++
Posted by Gabriel Hurtado Quispe on 9 mayo, 2023 en 5:51 pmTengo una consulta… como hago para sacar datos de un txt (por ejemplo que sea solo texto dentro del bloc de notas) y guardarlos en un array, para poder manipularlos posteriormente. Es en lenguaje C++ 😥
Angel Sánchez respondido 1 año, 5 meses 3 Miembros · 2 Respuestas- 2 Respuestas
Si vas a leer de un archivo de texto plano necesitas la librería fstream, y una variable tipo ifstream, cuando la inicializas, con el nombre del archivo a leer, después con un bucle (for/while) recorres el archivo posición a posición guardandolo en tu array (array[x] = variable ifstream.get(x);
Y al final cierras el archivo leído
Puedes hacerlo como te comento tu compañero Saul. Aquí te dejo un ejemplo:
#include <iostream>
#include <fstream>
#define MAX_LINE_LENGTH 100 // Definir la longitud máxima de una línea
// Función para leer el archivo y almacenar los datos en un arreglo de cadenas
void leerArchivo(const std::string& nombreArchivo, std::string* datos, int& numLineas) {
std::ifstream archivo(nombreArchivo); // Abrir el archivo para lectura
if (archivo.is_open()) { // Verificar si el archivo se abrió correctamente
std::string linea;
numLineas = 0; // Inicializar el contador de líneas
// Leer cada línea del archivo
while (std::getline(archivo, linea)) {
if (numLineas < MAX_LINE_LENGTH) { // Verificar si no se ha excedido el límite máximo de líneas
datos[numLineas] = linea; // Almacenar la línea en el arreglo de cadenas
numLineas++; // Incrementar el contador de líneas
} else {
std::cout << "Se ha alcanzado el límite máximo de líneas." << std::endl;
break; // Salir del bucle si se ha alcanzado el límite máximo de líneas
}
}
archivo.close(); // Cerrar el archivo después de la lectura
} else {
std::cout << "No se pudo abrir el archivo." << std::endl;
}
}
int main() {
std::string nombreArchivo = "datos.txt"; // Reemplaza "datos.txt" por el nombre de tu archivo
std::string datos[MAX_LINE_LENGTH]; // Arreglo para almacenar los datos del archivo
int numLineas = 0; // Variable para almacenar el número de líneas leídas
leerArchivo(nombreArchivo, datos, numLineas); // Llamar a la función para leer el archivo
// Manipula los datos según tus necesidades
for (int i = 0; i < numLineas; i++) {
std::cout << datos[i] << std::endl; // Imprimir cada línea almacenada en el arreglo
}
return 0;
}
¡Saludos!
Inicia sesión para responder.