Introducción a los Servicios Web con Java M.C. Juan Carlos Olivares Rojas Julio 2011.
1 Unidad IV Archivos en Java y C++ M.C. Juan Carlos Olivares Rojas.
-
Upload
maria-josefa-morales-peralta -
Category
Documents
-
view
231 -
download
1
Transcript of 1 Unidad IV Archivos en Java y C++ M.C. Juan Carlos Olivares Rojas.
![Page 1: 1 Unidad IV Archivos en Java y C++ M.C. Juan Carlos Olivares Rojas.](https://reader035.fdocuments.ec/reader035/viewer/2022081503/5665b47d1a28abb57c91f214/html5/thumbnails/1.jpg)
11
Unidad IV Archivos en Unidad IV Archivos en Java y C++Java y C++
M.C. Juan Carlos Olivares Rojas
![Page 2: 1 Unidad IV Archivos en Java y C++ M.C. Juan Carlos Olivares Rojas.](https://reader035.fdocuments.ec/reader035/viewer/2022081503/5665b47d1a28abb57c91f214/html5/thumbnails/2.jpg)
ArchivosArchivos
• 4.2 Streams en Java y C++
22
![Page 3: 1 Unidad IV Archivos en Java y C++ M.C. Juan Carlos Olivares Rojas.](https://reader035.fdocuments.ec/reader035/viewer/2022081503/5665b47d1a28abb57c91f214/html5/thumbnails/3.jpg)
C++C++
• En C++ el manejo de archivos cambia drásticamente dado que se manejan clases.
• Se encuentran definidas en la biblioteca <fstream> generalmente se manejan tres clases ifstream para entrada, ofstream para salida y fstream para entrada y salida. 33
![Page 4: 1 Unidad IV Archivos en Java y C++ M.C. Juan Carlos Olivares Rojas.](https://reader035.fdocuments.ec/reader035/viewer/2022081503/5665b47d1a28abb57c91f214/html5/thumbnails/4.jpg)
Archivos en C++Archivos en C++
• Los objetos genéricos de <iostream> (cin, cout, cerr y clog) son considerados flujos o archivos.
• Se siguen realizando las mismas operaciones sobre archivos: abrir, leer/escribir, cerrar archivo con algunas características.
44
![Page 5: 1 Unidad IV Archivos en Java y C++ M.C. Juan Carlos Olivares Rojas.](https://reader035.fdocuments.ec/reader035/viewer/2022081503/5665b47d1a28abb57c91f214/html5/thumbnails/5.jpg)
EjemploEjemplo//Archivo de salida#include <cstdlib>#include <iostream>#include <fstream>
using namespace std;
int main(int argc, char *argv[]){
55
![Page 6: 1 Unidad IV Archivos en Java y C++ M.C. Juan Carlos Olivares Rojas.](https://reader035.fdocuments.ec/reader035/viewer/2022081503/5665b47d1a28abb57c91f214/html5/thumbnails/6.jpg)
EjemploEjemplo string cadena; unsigned short int edad; ofstream archivo("archivo.txt", ios::out); if(!archivo) { cerr<<"El archivo no pudo crearse"; exit(-1); }
66
![Page 7: 1 Unidad IV Archivos en Java y C++ M.C. Juan Carlos Olivares Rojas.](https://reader035.fdocuments.ec/reader035/viewer/2022081503/5665b47d1a28abb57c91f214/html5/thumbnails/7.jpg)
EjemploEjemplo //lectura de datos desde la terminal cout<<"Introduce tu nombre y edad"; cin>>cadena>>edad; archivo<<cadena<<" "<<edad; system("PAUSE"); return EXIT_SUCCESS;}
77
![Page 8: 1 Unidad IV Archivos en Java y C++ M.C. Juan Carlos Olivares Rojas.](https://reader035.fdocuments.ec/reader035/viewer/2022081503/5665b47d1a28abb57c91f214/html5/thumbnails/8.jpg)
Archivos en C++Archivos en C++
• Se abre un archivo al crear un objeto ofstream, se tienen los siguientes parametros:
• ios::app //a• ios::ate //a+• ios:in //r• ios:out //w 88
![Page 9: 1 Unidad IV Archivos en Java y C++ M.C. Juan Carlos Olivares Rojas.](https://reader035.fdocuments.ec/reader035/viewer/2022081503/5665b47d1a28abb57c91f214/html5/thumbnails/9.jpg)
Archivos en C++Archivos en C++
• ios::nocreate //si no existe, falla• Ios::noreplace //si existe falla
• El operador de fin de archivo generalmente se representa con Ctrl+z o Ctrl+d.
• Se puede cerrar un archivo con el método close(), si no se utiliza al finalizar el programa el destructor lo hace.
99
![Page 10: 1 Unidad IV Archivos en Java y C++ M.C. Juan Carlos Olivares Rojas.](https://reader035.fdocuments.ec/reader035/viewer/2022081503/5665b47d1a28abb57c91f214/html5/thumbnails/10.jpg)
Archivos en C++Archivos en C++
//Para lectura de archivos
string nombre;unsigned short edad;ifstream archivo(“archivo.txt”, ios::in)archivo>>nombre>>edad;cout<<“nombre:”<<nombre<<“
edad:”<< edad; 1010
![Page 11: 1 Unidad IV Archivos en Java y C++ M.C. Juan Carlos Olivares Rojas.](https://reader035.fdocuments.ec/reader035/viewer/2022081503/5665b47d1a28abb57c91f214/html5/thumbnails/11.jpg)
ArchivosArchivos
• Por la forma de acceder a los archivos estos se clasifican en acceso secuencial y directo.
• Generalmente cuando se maneja archivos de texto el manejo es secuencial y cuando son binarios se pueden acceder de manera aleatoria.
1111
![Page 12: 1 Unidad IV Archivos en Java y C++ M.C. Juan Carlos Olivares Rojas.](https://reader035.fdocuments.ec/reader035/viewer/2022081503/5665b47d1a28abb57c91f214/html5/thumbnails/12.jpg)
ArchivosArchivos
• Se puede utilizar el método write() de ofstream para escribir en modo binario y el método read de ifstream para leer en modo binario.
• Se puede utilizar el método seekp() para desplazarse de manera aleatoria por todo el archivo.
1212
![Page 13: 1 Unidad IV Archivos en Java y C++ M.C. Juan Carlos Olivares Rojas.](https://reader035.fdocuments.ec/reader035/viewer/2022081503/5665b47d1a28abb57c91f214/html5/thumbnails/13.jpg)
Archivos en C++Archivos en C++
• Otros métodos que se pueden utilizar es el método open() para abrir, fail() para comprobar si se abrió correctamente y eof() para validar fin de archivo.
• Al abrir un archivo se puede omitir su modificador y se le asignan los permisos por default.
1313
![Page 14: 1 Unidad IV Archivos en Java y C++ M.C. Juan Carlos Olivares Rojas.](https://reader035.fdocuments.ec/reader035/viewer/2022081503/5665b47d1a28abb57c91f214/html5/thumbnails/14.jpg)
Archivos en C++Archivos en C++
• Se pueden agregar diversos modificadores de acceso: ios:in | ios:out, para lectura y escritura a la vez.
1414
![Page 15: 1 Unidad IV Archivos en Java y C++ M.C. Juan Carlos Olivares Rojas.](https://reader035.fdocuments.ec/reader035/viewer/2022081503/5665b47d1a28abb57c91f214/html5/thumbnails/15.jpg)
1515
¿Preguntas, dudas y ¿Preguntas, dudas y comentarios?comentarios?