1
00:00:00,210 --> 00:00:00,750
Bienvenidos.

2
00:00:00,780 --> 00:00:01,470
Continuamos.

3
00:00:01,530 --> 00:00:06,690
Vamos a ver la clase Buffer Richter en vez de utilizar directamente Foil Greater.

4
00:00:06,780 --> 00:00:11,190
Bueno, veamos la diferencia, lo que hace el Faulk Ritter por cada invocación de método, es decir,

5
00:00:11,200 --> 00:00:13,050
kaikki invocamos el happen o el right.

6
00:00:13,200 --> 00:00:17,100
Lo que hace es ir al sistema y escribir en el disco, en el archivo.

7
00:00:17,160 --> 00:00:23,010
Por ejemplo, si tenemos 100 invocaciones de método happen o right, va a ir 100 pese al disco iba a

8
00:00:23,010 --> 00:00:28,530
escribir 100 veces se fijan, no es tan optimizado porque claro, estamos yendo a un recurso, lo estamos

9
00:00:28,530 --> 00:00:34,830
utilizando, estamos escribiendo una y otra vez, mientras con el buffer Richter lo que haces es acumular

10
00:00:34,830 --> 00:00:40,320
cierta cantidad de caracteres y cuando llegue a este límite, que es como un contenedor que guarda el

11
00:00:40,320 --> 00:00:44,790
buffer, que por defecto el tamaño de ochomil 192 caracteres.

12
00:00:45,000 --> 00:00:48,480
Entonces, cuando se llena el buffer, ahí recién escriben el disco.

13
00:00:48,660 --> 00:00:53,760
Por lo tanto, no lo hace por cada invocación o llamada al método happen o al método right.

14
00:00:54,000 --> 00:00:55,320
Es mucho más optimizado.

15
00:00:55,440 --> 00:01:00,030
Va mucho menos veces a escribir al disco y a utilizar recursos de sistema.

16
00:01:00,060 --> 00:01:00,720
Por supuesto.

17
00:01:00,810 --> 00:01:04,500
Entonces, claro, me dice pero qué pasa si son 2 línea, 3 línea?

18
00:01:04,530 --> 00:01:05,460
Bueno, ahí da lo mismo.

19
00:01:05,490 --> 00:01:11,520
Podemos utilizar el Fail Greater, pero si estamos trabajando ya con gran cantidad de contenido de caracteres

20
00:01:11,580 --> 00:01:17,780
de línea, por ejemplo 100 líneas, claro, es mucho mejor utilizar el buffer right.

21
00:01:18,000 --> 00:01:27,510
Veamos el cambio, vamos a bajar, vamos a crear la instancia de la clase buffer rickter, le vamos

22
00:01:27,510 --> 00:01:33,270
a llamar buffer igual new buffer right

23
00:01:36,330 --> 00:01:40,140
y por constructor le tengo que pasar el Falk Richter escritor.

24
00:01:40,410 --> 00:01:42,010
El escritor le pasó perfecto.

25
00:01:42,180 --> 00:01:42,780
Ahí lo tenemos.

26
00:01:43,020 --> 00:01:48,410
Entonces, por un lado tenemos el Fault Reiter, que se encarga de crear el archivo con la bandera thru.

27
00:01:48,510 --> 00:01:55,170
Por lo tanto, si el contenido o archivo existe, le va a agregar o anexar nuevo contenido al que ya

28
00:01:55,170 --> 00:01:55,590
existe.

29
00:01:55,710 --> 00:02:00,900
Pero si el archivo no existe, lo crea y le agrega este contenido y el buffer Richter se encarga de

30
00:02:00,900 --> 00:02:02,440
escribir y maneja el buffer.

31
00:02:02,860 --> 00:02:07,740
Entonces, si le pasamos solamente el escritor y por detrás escena maneja todo forma automática y mucho

32
00:02:07,740 --> 00:02:08,010
mejor.

33
00:02:08,100 --> 00:02:13,230
Ahora, lo que si en vez de utilizar acá el escritor por estamos llamando a escritor en el happen y

34
00:02:13,230 --> 00:02:20,190
en el closet tenemos que utilizar buffer, buffer y también abajo acá.

35
00:02:22,990 --> 00:02:27,160
Buffer Closs importante cerrar el recurso del buffer y listo.

36
00:02:27,520 --> 00:02:30,210
Recuerden que el append y el right son muy parecido.

37
00:02:30,340 --> 00:02:36,040
De hecho, podríamos ver acá el happen, lo que hace retornar this, es decir, la misma instancia,

38
00:02:36,130 --> 00:02:37,840
el objeto del tipo Greater.

39
00:02:38,020 --> 00:02:40,250
En este caso del tipo buffer right.

40
00:02:40,660 --> 00:02:44,740
Pero acá utiliza la interfaz, pero por detrás de escena utiliza el método right.

41
00:02:45,070 --> 00:02:46,660
Es decir, por debajo invoca el right.

42
00:02:46,780 --> 00:02:48,250
Al final está llamando al right.

43
00:02:48,590 --> 00:02:49,990
El right devuelve un boy.

44
00:02:50,230 --> 00:02:51,490
Y acá devolvemos el this.

45
00:02:52,590 --> 00:02:55,620
Para encadenar método es la única diferencia, es para encadenar.

46
00:02:55,770 --> 00:03:00,930
Pero podemos utilizar el right con el objeto punto el right o encadenar con el happen.

47
00:03:01,090 --> 00:03:02,160
Bien, y estamos listo.

48
00:03:02,310 --> 00:03:03,960
Vamos a levantar acá.

49
00:03:04,080 --> 00:03:05,460
Ejemplo crear archivo.

50
00:03:09,790 --> 00:03:14,210
De esto nos vamos a la carpeta de cursos archivo llega Trema maullaba.

51
00:03:14,340 --> 00:03:17,620
Recuerden que la clase anterior ya teníamos 3 veces el contenido.

52
00:03:18,130 --> 00:03:20,470
Ahora deberá estar 4 meses, claro.

53
00:03:21,500 --> 00:03:24,080
Una y acá tres veces de la clase anterior.

54
00:03:24,200 --> 00:03:26,150
Por qué le agregamos nuevo contenido?

55
00:03:26,210 --> 00:03:27,710
Ahora vamos a cerrar.

56
00:03:29,870 --> 00:03:30,560
Volvemos.

57
00:03:30,650 --> 00:03:34,250
Y otro tema que quería ver es que una nueva característica de Yaba.

58
00:03:34,460 --> 00:03:39,470
Bueno, en realidad no tan nueva desde la versión de Java 7, que en vez de utilizar el TROI de esta

59
00:03:39,470 --> 00:03:42,890
forma lo podríamos utilizar con la forma de recurso.

60
00:03:42,980 --> 00:03:48,380
Claro, cada vez que abrimos un recurso, en este caso un archivo, lo podríamos implementar acá con

61
00:03:48,380 --> 00:03:49,040
los paréntesis.

62
00:03:49,280 --> 00:03:52,580
Por ejemplo, los paréntesis dentro el buffer.

63
00:03:53,090 --> 00:03:58,190
Veamos cómo sería el cambio en vez de utilizarlo de esta forma, creando el objeto fuera del constructor.

64
00:03:58,520 --> 00:03:59,600
Esto lo pudieron quitar.

65
00:03:59,780 --> 00:04:00,850
Esto acá se quita.

66
00:04:01,130 --> 00:04:05,060
Cortamos esto y lo dejamos acá en el constructor.

67
00:04:05,210 --> 00:04:06,070
Es lo mismo, cierto?

68
00:04:06,210 --> 00:04:07,280
Estamos perfecto.

69
00:04:09,190 --> 00:04:09,490
Bien.

70
00:04:09,580 --> 00:04:11,350
Y acá tenemos los paréntesis que agregamos.

71
00:04:11,770 --> 00:04:15,880
Vamos a cortar todo esto y lo pegamos acá dentro.

72
00:04:16,090 --> 00:04:16,510
Obviamente.

73
00:04:16,510 --> 00:04:18,250
E.com: No va, lo quitamos.

74
00:04:18,310 --> 00:04:18,790
Listo.

75
00:04:19,090 --> 00:04:19,750
Ahí lo tenemos.

76
00:04:20,290 --> 00:04:24,850
Intenta con los paréntesis abrir un recurso, ejecutar un recurso.

77
00:04:25,000 --> 00:04:26,140
Si todo sale bien, perfecto.

78
00:04:26,140 --> 00:04:27,480
Si no, lanza la excepción.

79
00:04:27,970 --> 00:04:30,190
Y con esto no evitamos el close.

80
00:04:30,550 --> 00:04:36,400
De hecho, el Closs lo podríamos quitar o lo comentamos porque de esta forma no es necesario de forma

81
00:04:36,400 --> 00:04:37,150
automática.

82
00:04:37,270 --> 00:04:40,510
Después, cuando finaliza el try, lo va a cerrar.

83
00:04:40,810 --> 00:04:44,470
Es decir, de forma implícita por detrás escena invoca el método Close.

84
00:04:44,590 --> 00:04:46,110
No lo vemos, pero lo hace.

85
00:04:46,270 --> 00:04:52,210
Y así no tenemos que estar preocupándonos de cerrar con el ploff de forma explícita y listo.

86
00:04:52,780 --> 00:04:53,740
Lo vamos a ejecutar.

87
00:04:57,690 --> 00:04:58,350
Vamos a ver.

88
00:05:01,820 --> 00:05:02,330
Listo.

89
00:05:02,510 --> 00:05:03,280
5S.

90
00:05:03,740 --> 00:05:04,440
Así que funciona bien.

91
00:05:05,300 --> 00:05:06,140
Veamos otra forma.

92
00:05:06,650 --> 00:05:10,560
También quería ver otra forma en vez de utilizar el buffer Ritter.

93
00:05:10,730 --> 00:05:12,770
Podríamos utilizar el print Ritter.

94
00:05:13,280 --> 00:05:15,230
De hecho, vamos a copiar esto acá.

95
00:05:16,130 --> 00:05:17,000
Lo copiamos.

96
00:05:18,080 --> 00:05:20,750
Bajamos, vamos a renombrar.

97
00:05:22,380 --> 00:05:26,850
Bien, vamos a utilizar el crear Archivo 2 y acá vamos a cambiar.

98
00:05:26,940 --> 00:05:31,920
En vez de buffer utilizamos print, llega también.

99
00:05:34,190 --> 00:05:35,720
Importamos, se fijan?

100
00:05:35,840 --> 00:05:38,880
Realmente cambiamos la implementación de buffer a print.

101
00:05:39,020 --> 00:05:44,240
También hemos utilizado por supuesto que utilizar el falt greater también maneja un buffer y todo lo

102
00:05:44,240 --> 00:05:44,630
demás.

103
00:05:44,720 --> 00:05:50,600
Pero aparte nos permite utilizar métodos como el printing, el print, elpríncipe, el print F para

104
00:05:50,600 --> 00:05:51,380
dar formato.

105
00:05:51,530 --> 00:05:58,310
Es decir, escribir en un archivo como si fuera una consola muy parecido al sisten puntó punto print,

106
00:05:58,460 --> 00:05:59,000
por ejemplo.

107
00:05:59,120 --> 00:06:00,530
Cómo sería cambio entonces?

108
00:06:00,560 --> 00:06:07,480
Bueno, en vez de usar el happen lo vamos a modificar y vamos a utilizar el print, el print y con el

109
00:06:07,490 --> 00:06:09,230
N es para dar un salto línea.

110
00:06:09,290 --> 00:06:13,640
Por lo tanto, no sería necesario tener esto, ya no sería necesario.

111
00:06:14,590 --> 00:06:20,170
Lo mismo acá, pero acá vamos a necesitar el buffer porque no es encadenado.

112
00:06:20,560 --> 00:06:21,370
Devuelve un vey.

113
00:06:23,240 --> 00:06:31,190
Print ln punti koma bajamos, llega también, entonces quitamos el happen.

114
00:06:33,720 --> 00:06:36,360
Buffer punto Pringle.

115
00:06:38,310 --> 00:06:39,960
Perfecto, acá faltó punto y coma.

116
00:06:41,580 --> 00:06:43,180
Ahora, cómo tiene el print line?

117
00:06:43,380 --> 00:06:46,050
El salto línea lo ejecutar dos veces.

118
00:06:46,500 --> 00:06:47,280
Vamos a revisar.

119
00:06:48,210 --> 00:06:50,010
Antes vamos a cambiar acá.

120
00:06:50,070 --> 00:06:53,250
En vez de crear archivo, le vamos a colocar crear archivo 2.

121
00:06:54,590 --> 00:06:55,370
Y ejecutamos.

122
00:06:57,600 --> 00:07:00,690
Es decir, estaba invocando el método que utiliza el print Ritter.

123
00:07:02,730 --> 00:07:04,200
Vamos a abrir con el Notepad.

124
00:07:05,050 --> 00:07:05,510
Heredaremos.

125
00:07:05,620 --> 00:07:06,460
Hola, qué tal, amigo?

126
00:07:06,460 --> 00:07:09,280
Se fijan un salto y otro salto, otro paso.

127
00:07:09,730 --> 00:07:12,120
Por qué lo haces dos veces por el print, Elena?

128
00:07:12,250 --> 00:07:16,690
De hecho, pudieron quitar esto acá también y acá también.

129
00:07:18,000 --> 00:07:19,050
Y lo tenemos listo.

130
00:07:19,140 --> 00:07:23,760
También podrían utilizar el print format en vez de ln f, por ejemplo.

131
00:07:24,540 --> 00:07:25,530
Hasta luego Lucas.

132
00:07:25,980 --> 00:07:33,150
Lo voy a quitar y lo cambiamos por un parámetro porcentage S, yaca una coma y le pasamos el Lucas como

133
00:07:33,150 --> 00:07:33,720
parámetro.

134
00:07:33,840 --> 00:07:35,070
También podemos dar formato.

135
00:07:35,880 --> 00:07:36,720
Vamos a revisar.

136
00:07:42,950 --> 00:07:49,220
Revisamos el archivo a que me pide actualizarlo porque se modificó por otro programa, le coloco que

137
00:07:49,220 --> 00:07:49,520
si.

138
00:07:50,680 --> 00:07:51,760
De cara tenemos se.

139
00:07:52,870 --> 00:07:53,500
Hola que tal amigos?

140
00:07:53,530 --> 00:07:54,220
Todo bien?

141
00:07:54,460 --> 00:07:55,480
Hasta luego Lucas.

142
00:07:55,930 --> 00:08:00,070
Funciona bien, diferente forma, diferentes implementaciones según lo que necesitemos.

143
00:08:00,070 --> 00:08:05,230
Si queremos trabajar como si fuera una consola terminal escribiendo en el archivo utilizamos el print

144
00:08:05,230 --> 00:08:05,710
Ritter.

145
00:08:06,460 --> 00:08:11,620
Si queremos manejar un buffer de mayor capacidad de forma más optimizada, utilizamos buffer right.

146
00:08:11,830 --> 00:08:16,510
Aunque también el print Ritter también trabaja por debajo con un buffer Witter.

147
00:08:16,600 --> 00:08:18,250
También está optimizado con un buffer.

148
00:08:18,400 --> 00:08:24,730
Ahora, si estamos trabajando con pocos líneas de texto y vamos a escribir un archivo pequeño, podemos

149
00:08:24,730 --> 00:08:26,860
utilizar directamente Fulbright.

150
00:08:27,070 --> 00:08:27,760
Ningún problema.

151
00:08:28,130 --> 00:08:35,440
Y recuerden con el trae los paréntesis y consumimos o abrimos un recurso y de forma implícita se cierra

152
00:08:35,500 --> 00:08:36,880
automáticamente con el Clowes.

153
00:08:37,060 --> 00:08:39,160
No necesario tener que hacerlo de forma explícita.

154
00:08:39,350 --> 00:08:42,760
Bien, continuemos en la siguiente clase con leer un archivo.

155
00:08:42,820 --> 00:08:43,510
Nos vemos.
