Operaciones sobre archivos en C++
Enviado por Keylor Jesús • 11 de Noviembre de 2015 • Práctica o problema • 1.014 Palabras (5 Páginas) • 212 Visitas
Administración de archivos
Operaciones sobre archivos en C++
#include
#include "fstream"
//declarar una variable de archivo
fstream fp1("archivoAB2.dat", ios::in | ios::out |ios::binary );//|ios::trunc );
//escribir en el archivo una Estructura
fp1.seekg(index*sizeof(reg));
fp1.write(reinterpret_cast
//Leer del archivo una Estructura
fp2.seekg(index*sizeof(reg2),ios::beg);
fp2.read(reinterpret_cast
//cerrar el archivo
fp1.close();
//validar que el archivo este asignado
if(!fp1){
cout <<"error en la apertura del archivo";
}
//conocer la longitud del archivo
long fin_archivo(){
long n;
fp1.seekg(0, ios::end);
n = fp1.tellg();
n= (n/sizeof(reg))-1;
return n;
}
Arboles binarios
Práctica manual.
Ejemplo Inserción 18, 5, 12, 32, 10, 2, 25, 81, 6, 16, 3, 47, 38.
#reg | izq | info | der |
0 | |||
1 | |||
2 | |||
3 | |||
4 | |||
5 | |||
6 | |||
7 | |||
8 | |||
9 | |||
10 | |||
11 | |||
12 |
Práctica:
Inserción 10, 25, 6, 13, 8, 18, 12, 32, 16, 3, 7, 9, 22, 11.
#reg | izq | info | der |
0 | |||
1 | |||
2 | |||
3 | |||
4 | |||
5 | |||
6 | |||
7 | |||
8 | |||
9 | |||
10 | |||
11 | |||
12 | |||
13 | |||
14 |
Práctica de borrado. Borrar el # 8.
#reg | izq | info | der |
0 | |||
1 | |||
2 | |||
3 | |||
4 | |||
5 | |||
6 | |||
7 | |||
8 | |||
9 | |||
10 | |||
11 | |||
12 | |||
13 | |||
14 |
Como práctica de laboratorio realizar el siguiente programa
- Defina una estructura o clase de árbol binario para almacenar en archivo.
La estructura de un árbol binario para archivo sería
struct arb_bin{
public:
int info;//del tipo de datos que desee, puede ser estudiante, curso…
long izq, der;
arb_bin(){
info= 0;
izq=0;
der=0;
}
}reg;
- Codifique del método de insertar en árbol binario ordenado en archivo.
Recuerde las instrucciones para escribir en archivo y para posicionarse aleatoriamente en el archivo.
fstream fp1("archivoAB.dat", ios::in | ios::out |ios::binary| ios::trunc );
if(!fp1){
cout <<"error en la apertura del archivo";
...