Bienvenidos.
Continuamos.
Vamos a ver la clase Buffer Richter en vez de utilizar directamente Foil Greater.
Bueno, veamos la diferencia, lo que hace el Faulk Ritter por cada invocación de método, es decir,
kaikki invocamos el happen o el right.
Lo que hace es ir al sistema y escribir en el disco, en el archivo.
Por ejemplo, si tenemos 100 invocaciones de método happen o right, va a ir 100 pese al disco iba a
escribir 100 veces se fijan, no es tan optimizado porque claro, estamos yendo a un recurso, lo estamos
utilizando, estamos escribiendo una y otra vez, mientras con el buffer Richter lo que haces es acumular
cierta cantidad de caracteres y cuando llegue a este límite, que es como un contenedor que guarda el
buffer, que por defecto el tamaño de ochomil 192 caracteres.
Entonces, cuando se llena el buffer, ahí recién escriben el disco.
Por lo tanto, no lo hace por cada invocación o llamada al método happen o al método right.
Es mucho más optimizado.
Va mucho menos veces a escribir al disco y a utilizar recursos de sistema.
Por supuesto.
Entonces, claro, me dice pero qué pasa si son 2 línea, 3 línea?
Bueno, ahí da lo mismo.
Podemos utilizar el Fail Greater, pero si estamos trabajando ya con gran cantidad de contenido de caracteres
de línea, por ejemplo 100 líneas, claro, es mucho mejor utilizar el buffer right.
Veamos el cambio, vamos a bajar, vamos a crear la instancia de la clase buffer rickter, le vamos
a llamar buffer igual new buffer right
y por constructor le tengo que pasar el Falk Richter escritor.
El escritor le pasó perfecto.
Ahí lo tenemos.
Entonces, por un lado tenemos el Fault Reiter, que se encarga de crear el archivo con la bandera thru.
Por lo tanto, si el contenido o archivo existe, le va a agregar o anexar nuevo contenido al que ya
existe.
Pero si el archivo no existe, lo crea y le agrega este contenido y el buffer Richter se encarga de
escribir y maneja el buffer.
Entonces, si le pasamos solamente el escritor y por detrás escena maneja todo forma automática y mucho
mejor.
Ahora, lo que si en vez de utilizar acá el escritor por estamos llamando a escritor en el happen y
en el closet tenemos que utilizar buffer, buffer y también abajo acá.
Buffer Closs importante cerrar el recurso del buffer y listo.
Recuerden que el append y el right son muy parecido.
De hecho, podríamos ver acá el happen, lo que hace retornar this, es decir, la misma instancia,
el objeto del tipo Greater.
En este caso del tipo buffer right.
Pero acá utiliza la interfaz, pero por detrás de escena utiliza el método right.
Es decir, por debajo invoca el right.
Al final está llamando al right.
El right devuelve un boy.
Y acá devolvemos el this.
Para encadenar método es la única diferencia, es para encadenar.
Pero podemos utilizar el right con el objeto punto el right o encadenar con el happen.
Bien, y estamos listo.
Vamos a levantar acá.
Ejemplo crear archivo.
De esto nos vamos a la carpeta de cursos archivo llega Trema maullaba.
Recuerden que la clase anterior ya teníamos 3 veces el contenido.
Ahora deberá estar 4 meses, claro.
Una y acá tres veces de la clase anterior.
Por qué le agregamos nuevo contenido?
Ahora vamos a cerrar.
Volvemos.
Y otro tema que quería ver es que una nueva característica de Yaba.
Bueno, en realidad no tan nueva desde la versión de Java 7, que en vez de utilizar el TROI de esta
forma lo podríamos utilizar con la forma de recurso.
Claro, cada vez que abrimos un recurso, en este caso un archivo, lo podríamos implementar acá con
los paréntesis.
Por ejemplo, los paréntesis dentro el buffer.
Veamos cómo sería el cambio en vez de utilizarlo de esta forma, creando el objeto fuera del constructor.
Esto lo pudieron quitar.
Esto acá se quita.
Cortamos esto y lo dejamos acá en el constructor.
Es lo mismo, cierto?
Estamos perfecto.
Bien.
Y acá tenemos los paréntesis que agregamos.
Vamos a cortar todo esto y lo pegamos acá dentro.
Obviamente.
E.com: No va, lo quitamos.
Listo.
Ahí lo tenemos.
Intenta con los paréntesis abrir un recurso, ejecutar un recurso.
Si todo sale bien, perfecto.
Si no, lanza la excepción.
Y con esto no evitamos el close.
De hecho, el Closs lo podríamos quitar o lo comentamos porque de esta forma no es necesario de forma
automática.
Después, cuando finaliza el try, lo va a cerrar.
Es decir, de forma implícita por detrás escena invoca el método Close.
No lo vemos, pero lo hace.
Y así no tenemos que estar preocupándonos de cerrar con el ploff de forma explícita y listo.
Lo vamos a ejecutar.
Vamos a ver.
Listo.
5S.
Así que funciona bien.
Veamos otra forma.
También quería ver otra forma en vez de utilizar el buffer Ritter.
Podríamos utilizar el print Ritter.
De hecho, vamos a copiar esto acá.
Lo copiamos.
Bajamos, vamos a renombrar.
Bien, vamos a utilizar el crear Archivo 2 y acá vamos a cambiar.
En vez de buffer utilizamos print, llega también.
Importamos, se fijan?
Realmente cambiamos la implementación de buffer a print.
También hemos utilizado por supuesto que utilizar el falt greater también maneja un buffer y todo lo
demás.
Pero aparte nos permite utilizar métodos como el printing, el print, elpríncipe, el print F para
dar formato.
Es decir, escribir en un archivo como si fuera una consola muy parecido al sisten puntó punto print,
por ejemplo.
Cómo sería cambio entonces?
Bueno, en vez de usar el happen lo vamos a modificar y vamos a utilizar el print, el print y con el
N es para dar un salto línea.
Por lo tanto, no sería necesario tener esto, ya no sería necesario.
Lo mismo acá, pero acá vamos a necesitar el buffer porque no es encadenado.
Devuelve un vey.
Print ln punti koma bajamos, llega también, entonces quitamos el happen.
Buffer punto Pringle.
Perfecto, acá faltó punto y coma.
Ahora, cómo tiene el print line?
El salto línea lo ejecutar dos veces.
Vamos a revisar.
Antes vamos a cambiar acá.
En vez de crear archivo, le vamos a colocar crear archivo 2.
Y ejecutamos.
Es decir, estaba invocando el método que utiliza el print Ritter.
Vamos a abrir con el Notepad.
Heredaremos.
Hola, qué tal, amigo?
Se fijan un salto y otro salto, otro paso.
Por qué lo haces dos veces por el print, Elena?
De hecho, pudieron quitar esto acá también y acá también.
Y lo tenemos listo.
También podrían utilizar el print format en vez de ln f, por ejemplo.
Hasta luego Lucas.
Lo voy a quitar y lo cambiamos por un parámetro porcentage S, yaca una coma y le pasamos el Lucas como
parámetro.
También podemos dar formato.
Vamos a revisar.
Revisamos el archivo a que me pide actualizarlo porque se modificó por otro programa, le coloco que
si.
De cara tenemos se.
Hola que tal amigos?
Todo bien?
Hasta luego Lucas.
Funciona bien, diferente forma, diferentes implementaciones según lo que necesitemos.
Si queremos trabajar como si fuera una consola terminal escribiendo en el archivo utilizamos el print
Ritter.
Si queremos manejar un buffer de mayor capacidad de forma más optimizada, utilizamos buffer right.
Aunque también el print Ritter también trabaja por debajo con un buffer Witter.
También está optimizado con un buffer.
Ahora, si estamos trabajando con pocos líneas de texto y vamos a escribir un archivo pequeño, podemos
utilizar directamente Fulbright.
Ningún problema.
Y recuerden con el trae los paréntesis y consumimos o abrimos un recurso y de forma implícita se cierra
automáticamente con el Clowes.
No necesario tener que hacerlo de forma explícita.
Bien, continuemos en la siguiente clase con leer un archivo.
Nos vemos.