1 00:00:00,000 --> 00:00:17,160 Vale, habréis hecho algo como esto, el mismo código anterior, pero lo único que identificamos es que no concatenamos todos, concatenamos solo los que sean diferentes a los relacionados con saltar la línea. 2 00:00:17,160 --> 00:00:19,780 Salto de línea, salto entonces 3 00:00:19,780 --> 00:00:22,399 Claro, eso es lo que queréis hacer 4 00:00:22,399 --> 00:00:23,399 ¿No? Vale 5 00:00:23,399 --> 00:00:25,839 Entonces aquí efectivamente o bien 6 00:00:25,839 --> 00:00:28,760 Uno se va a la tabla ASTI y busca el carácter 7 00:00:28,760 --> 00:00:29,760 O 8 00:00:29,760 --> 00:00:31,820 Vale 9 00:00:31,820 --> 00:00:34,000 O hace algo más sencillo 10 00:00:34,000 --> 00:00:34,700 Por ejemplo 11 00:00:34,700 --> 00:00:37,719 Si la conversión 12 00:00:37,719 --> 00:00:39,899 A chat de esto es diferente 13 00:00:39,899 --> 00:00:41,179 De 14 00:00:41,179 --> 00:00:48,579 ¿Vale? Algo así. 15 00:00:51,100 --> 00:00:53,079 Esto o sin convertirlo 16 00:00:53,079 --> 00:00:54,820 poner aquí el numerito 17 00:00:54,820 --> 00:00:56,740 que en la tabla ASCII se corresponde con este. 18 00:00:57,060 --> 00:00:57,679 Me da igual, ¿no? 19 00:00:57,960 --> 00:01:00,340 Me da igual. 20 00:01:00,659 --> 00:01:02,960 O bien convertir directamente la versión 21 00:01:02,960 --> 00:01:04,680 entera, comparar la versión entera 22 00:01:04,680 --> 00:01:06,599 con lo que en la tabla ASCII 23 00:01:06,599 --> 00:01:08,040 es la nueva línea 24 00:01:08,040 --> 00:01:10,760 o bien pasarlo a char y convertirlo 25 00:01:10,760 --> 00:01:12,599 con esto, entonces todo el que sea diferente 26 00:01:12,599 --> 00:01:13,719 de este lo concatenamos 27 00:01:13,719 --> 00:01:16,180 entonces si ejecutamos esto 28 00:01:16,180 --> 00:01:17,700 pues 29 00:01:17,700 --> 00:01:24,540 que sí, que ya 30 00:01:24,540 --> 00:01:25,680 lo sabemos 31 00:01:25,680 --> 00:01:30,680 saltos de línea 32 00:01:48,859 --> 00:01:49,579 txt 33 00:01:49,579 --> 00:01:50,340 vale 34 00:01:50,340 --> 00:01:56,680 lo metemos en el try catch 35 00:01:56,680 --> 00:01:57,180 y ya está 36 00:01:57,180 --> 00:02:00,700 esto vamos a comentarlo para que no nos lo haga 37 00:02:00,700 --> 00:02:02,620 todo el rato 38 00:02:02,620 --> 00:02:04,459 ejecutamos esto a ver que hace 39 00:02:04,459 --> 00:02:08,449 y me sigue 40 00:02:08,449 --> 00:02:09,889 incorporando saltos de línea 41 00:02:09,889 --> 00:02:12,449 debe ser que pasar de aquí 42 00:02:12,449 --> 00:02:14,610 a aquí tiene más caracteres 43 00:02:14,610 --> 00:02:15,810 que solamente ese 44 00:02:15,810 --> 00:02:17,750 ese es el punto 45 00:02:17,750 --> 00:02:19,210 no te hace nada 46 00:02:19,210 --> 00:02:21,469 algo te ha quitado 47 00:02:21,469 --> 00:02:23,490 o sea, los barra N te los ha quitado 48 00:02:23,490 --> 00:02:29,229 claro, pero es que una cosa es la nueva línea 49 00:02:29,229 --> 00:02:31,169 y otra es el retorno de carro 50 00:02:31,169 --> 00:02:33,090 claro, el retorno del carro 51 00:02:33,090 --> 00:02:34,110 de la máquina de escribir 52 00:02:34,110 --> 00:02:38,909 bueno, a ver 53 00:02:38,909 --> 00:02:40,490 vamos a seguir intentándolo 54 00:02:40,490 --> 00:02:42,050 o ya está 55 00:02:42,050 --> 00:02:43,770 decimos que no se puede 56 00:02:43,770 --> 00:02:47,310 vale, si es diferente de 57 00:02:47,310 --> 00:02:48,550 salto de línea 58 00:02:48,550 --> 00:02:50,930 y además 59 00:02:50,930 --> 00:02:53,229 de ser diferente, no le meto honor, por Dios 60 00:02:53,229 --> 00:02:55,129 ya es que me liáis, y además 61 00:02:55,129 --> 00:02:57,250 de ser diferente, también es 62 00:02:57,250 --> 00:02:57,889 diferente 63 00:02:57,889 --> 00:03:01,210 vamos a seguir buscando 64 00:03:01,210 --> 00:03:02,509 caracteres relacionados con 65 00:03:02,509 --> 00:03:03,789 saltar la línea 66 00:03:03,789 --> 00:03:06,710 vamos a seguir buscando caracteres relacionados 67 00:03:06,710 --> 00:03:10,330 ¿barra? 68 00:03:11,110 --> 00:03:12,509 no, ese es el tabulador 69 00:03:12,509 --> 00:03:15,069 retorno de carro 70 00:03:15,069 --> 00:03:16,289 ¿a qué nos suena? 71 00:03:17,330 --> 00:03:17,849 a una R 72 00:03:17,849 --> 00:03:22,349 vale, entonces 73 00:03:22,349 --> 00:03:25,069 si es diferente de este y diferente 74 00:03:25,069 --> 00:03:26,810 de este, para que 75 00:03:26,810 --> 00:03:28,930 vamos a seguir 76 00:03:28,930 --> 00:03:30,650 quitando caracteres de la tabla 77 00:03:30,650 --> 00:03:32,689 relacionados con eso, a ver si ahora 78 00:03:32,689 --> 00:03:33,229 vale 79 00:03:33,229 --> 00:03:36,090 ahora sí 80 00:03:36,090 --> 00:03:37,889 luego realmente 81 00:03:37,889 --> 00:03:41,229 entre este y este 82 00:03:41,229 --> 00:03:42,189 está metiendo 83 00:03:42,189 --> 00:03:46,150 y si quitamos solamente 84 00:03:46,150 --> 00:03:49,789 el barra N 85 00:03:49,789 --> 00:03:51,889 a ver si quitando solamente el barra N 86 00:03:51,889 --> 00:03:55,629 ahí no, con lo cual ya 87 00:03:55,629 --> 00:03:57,729 vemos que es la concatenación de los dos 88 00:03:57,729 --> 00:03:59,530 los que usa, uno es la nueva línea 89 00:03:59,530 --> 00:04:01,310 y otro es el saltito 90 00:04:01,310 --> 00:04:03,189 ¿vale? entonces 91 00:04:03,189 --> 00:04:04,849 si uno, dime 92 00:04:04,849 --> 00:04:15,310 bueno, no te hacen falta los tres 93 00:04:15,310 --> 00:04:17,550 con los dos, entonces, aquí es que 94 00:04:17,550 --> 00:04:18,910 claro, uno se 95 00:04:18,910 --> 00:04:26,480 si se va aquí a la tabla ASTI 96 00:04:26,480 --> 00:04:38,939 pues uno en una situación 97 00:04:38,939 --> 00:04:41,100 así, claro, primero 98 00:04:41,100 --> 00:04:43,079 piensa y dice 99 00:04:43,079 --> 00:04:43,699 debe ser 100 00:04:43,699 --> 00:04:47,399 que tengo más caracteres relacionados 101 00:04:47,399 --> 00:04:48,759 con saltar que el barra N 102 00:04:48,759 --> 00:04:51,259 debe ser, entonces uno se va 103 00:04:51,259 --> 00:04:53,379 a la tabla 104 00:04:53,379 --> 00:04:55,620 ASTI, mira a ver todo lo relacionado con saltar 105 00:04:55,620 --> 00:04:56,899 entonces pues 106 00:04:56,899 --> 00:04:59,439 sí, nueva línea está relacionado 107 00:04:59,439 --> 00:05:00,980 retorno de carro 108 00:05:00,980 --> 00:05:03,100 pues retorno de carro también 109 00:05:03,100 --> 00:05:05,660 vosotros que habéis escrito mucho en máquinas de escribir 110 00:05:05,660 --> 00:05:07,459 pues sabéis que el carro 111 00:05:07,459 --> 00:05:09,220 para irte a una línea nueva 112 00:05:09,220 --> 00:05:11,519 tenía que retornar a su posición inicial 113 00:05:11,519 --> 00:05:12,160 a mano, de hecho 114 00:05:12,160 --> 00:05:15,540 entonces, como vosotros 115 00:05:15,540 --> 00:05:17,259 tenéis muy presente los carros 116 00:05:17,259 --> 00:05:19,079 de las máquinas de escribir que tienen que retornar 117 00:05:19,079 --> 00:05:20,800 en cuanto veis retorno de carro decís 118 00:05:20,800 --> 00:05:23,139 es que este también puede que esté involucrado 119 00:05:23,139 --> 00:05:24,079 lo pruebo 120 00:05:24,079 --> 00:05:27,259 y si con ese sigue sin funcionarme 121 00:05:27,259 --> 00:05:29,240 debe ser que a lo mejor hay otro carácter 122 00:05:29,240 --> 00:05:31,420 más involucrado también en salto de línea 123 00:05:31,420 --> 00:05:32,519 entonces tendría que buscarlo 124 00:05:32,519 --> 00:05:35,319 pero como nos ha funcionado debe ser que no hay más 125 00:05:35,319 --> 00:05:37,079 y si no, dime 126 00:05:37,079 --> 00:05:40,819 que descansito, pero si 127 00:05:40,819 --> 00:05:43,139 descansito, espera que hay cuarto 128 00:05:43,139 --> 00:05:47,019 bueno, un poco antes, vale 129 00:05:47,019 --> 00:05:49,000 y si no 130 00:05:49,000 --> 00:05:52,040 vamos a suponer que somos tan sumamente 131 00:05:52,040 --> 00:05:52,620 vagos 132 00:05:52,620 --> 00:05:55,899 o que no conocemos las máquinas de 133 00:05:55,899 --> 00:05:57,860 escribir y no, el retorno de claro no nos ha dicho 134 00:05:57,860 --> 00:05:59,779 nada, a ver si Chagé Peté 135 00:05:59,779 --> 00:06:00,439 la conoce 136 00:06:00,439 --> 00:06:03,879 a ver que nunca le he 137 00:06:03,879 --> 00:06:05,560 preguntado a ver que nos responde algo así 138 00:06:05,560 --> 00:06:07,060 ¿estudias la mecanografía? 139 00:06:07,740 --> 00:06:08,259 no 140 00:06:08,259 --> 00:06:15,399 tiene que ser duro 141 00:06:15,399 --> 00:06:21,839 supongo 142 00:06:21,839 --> 00:06:23,100 mucha fuerza 143 00:06:23,100 --> 00:06:25,480 si a ver 144 00:06:25,480 --> 00:06:27,180 yo si he probado una máquina de escribir 145 00:06:27,180 --> 00:06:28,480 y si que son 146 00:06:28,480 --> 00:06:36,209 eliminan los 147 00:06:36,209 --> 00:06:38,290 saltos de línea 148 00:06:38,290 --> 00:06:40,750 vamos a poner 149 00:06:46,089 --> 00:06:47,810 pues fijaos que listo es 150 00:06:47,810 --> 00:06:48,629 ah vale 151 00:06:48,629 --> 00:06:49,629 la primera opción 152 00:06:49,629 --> 00:06:52,290 el problema es que estás utilizando 153 00:06:52,290 --> 00:06:54,250 stream result, lo cual es el problema de rendimiento 154 00:06:54,250 --> 00:06:55,410 nada, esto nada 155 00:06:55,410 --> 00:06:58,589 y luego me dice 156 00:06:58,589 --> 00:07:00,389 evita caracteres de una variedad de retornos 157 00:07:00,389 --> 00:07:01,589 de cargo, ¿cómo que los evite? 158 00:07:02,829 --> 00:07:04,329 vale, no es que esté muy atinado 159 00:07:04,329 --> 00:07:06,629 en lo que me dice, pero sí que me enciende la lucecita 160 00:07:06,629 --> 00:07:07,490 de anda 161 00:07:07,490 --> 00:07:10,529 debe ser que este carácter existe, aunque la respuesta 162 00:07:10,529 --> 00:07:12,350 es medio rara, conclusión 163 00:07:12,350 --> 00:07:13,910 para entenderle a él 164 00:07:13,910 --> 00:07:16,230 tenéis que saber vosotros mucho 165 00:07:16,230 --> 00:07:18,550 ¿vale? nunca jamás va a ser la solución 166 00:07:18,550 --> 00:07:19,889 de vuestras vidas, por ahora 167 00:07:19,889 --> 00:07:22,689 por ahora, pero para entenderle 168 00:07:22,689 --> 00:07:24,829 su idioma extraño 169 00:07:24,829 --> 00:07:26,129 tenéis que saber vosotros 170 00:07:26,129 --> 00:07:26,970 vale 171 00:07:26,970 --> 00:07:30,670 bueno, mira, esto que nos ha hecho está bien 172 00:07:30,670 --> 00:07:32,670 lo del stream builder que te da más rendimiento 173 00:07:32,670 --> 00:07:34,389 jolín, por dios, vale, sí 174 00:07:34,389 --> 00:07:36,649 a ver 175 00:07:36,649 --> 00:07:38,850 el tema, lo que en la parte nos está diciendo 176 00:07:38,850 --> 00:07:41,029 es, estamos concatenando en un stream 177 00:07:41,029 --> 00:07:42,089 entonces 178 00:07:42,089 --> 00:07:44,250 eso se puede hacer 179 00:07:44,250 --> 00:07:46,550 perfectamente, pero es 180 00:07:46,550 --> 00:07:49,810 tiene mucho menos rendimiento 181 00:07:49,810 --> 00:07:51,449 que a través de un objeto 182 00:07:51,449 --> 00:07:52,829 intermedio stream builder 183 00:07:52,829 --> 00:07:55,850 entonces stream builder es un objeto que optimiza 184 00:07:55,850 --> 00:07:57,189 los accesos a stream 185 00:07:57,189 --> 00:07:58,569 los optimiza 186 00:07:58,569 --> 00:07:59,730 entonces 187 00:07:59,730 --> 00:08:03,209 el stream builder es como si fuera un stream 188 00:08:03,209 --> 00:08:05,449 con funcionalidades añadidas 189 00:08:05,449 --> 00:08:06,470 que optimizan rendimiento 190 00:08:06,470 --> 00:08:08,769 y cuando concatenamos en un stream builder 191 00:08:08,769 --> 00:08:09,990 el dual del catenar con más 192 00:08:09,990 --> 00:08:12,389 concatenamos con append y ya está 193 00:08:12,389 --> 00:08:14,149 y luego ese stream builder 194 00:08:14,149 --> 00:08:16,410 pues lo podemos ya devolver a stream 195 00:08:16,410 --> 00:08:17,589 con tu stream, lo que sea 196 00:08:17,589 --> 00:08:20,569 sí, pero computacionalmente 197 00:08:20,569 --> 00:08:22,009 es mejor porque el stream 198 00:08:22,009 --> 00:08:26,149 pues tendría que ver cómo está construida 199 00:08:26,149 --> 00:08:28,230 habría que ver cómo está construida la clase por dentro 200 00:08:28,230 --> 00:08:29,670 pero el stream builder 201 00:08:29,670 --> 00:08:32,190 esencialmente 202 00:08:32,190 --> 00:08:34,350 el stream builder está hecho para optimizarte 203 00:08:34,350 --> 00:08:36,389 a efectos de rendimiento 204 00:08:36,389 --> 00:08:38,669 en tiempo, los accesos 205 00:08:38,669 --> 00:08:40,009 a stream, ya está 206 00:08:40,009 --> 00:08:41,509 justo 207 00:08:41,509 --> 00:08:44,350 está hecho para eso, ¿cómo lo hace por dentro? 208 00:08:44,350 --> 00:08:47,350 el string es un array 209 00:08:47,350 --> 00:08:49,570 el string es un array sin más 210 00:08:49,570 --> 00:08:51,769 y el string builder te optimiza el uso 211 00:08:51,769 --> 00:08:53,570 de ese array, algo hará con él 212 00:08:53,570 --> 00:08:56,129 pues algo hará 213 00:08:56,129 --> 00:08:56,690 no lo sabemos