Clase 06-05-24 - 2 - Contenido educativo
Ajuste de pantallaEl ajuste de pantalla se aprecia al ver el vídeo en pantalla completa. Elige la presentación que más te guste:
Estábamos con la
00:00:00
Silencio
00:00:04
La respuesta
00:00:06
Al ítem de nuevo, ¿verdad?
00:00:08
Entonces con la respuesta al ítem de nuevo
00:00:12
Que estaba aquí
00:00:14
Ya teníamos
00:00:18
Aquí no estaba, estaba ahí
00:00:19
Ya teníamos parte hecha
00:00:21
Que era coger el nombre del archivo nuevo
00:00:24
¿Vale?
00:00:27
Eso ya lo puedo comentar
00:00:29
Porque esto estaba hecho para comprobación
00:00:30
ya lo puedo comentar
00:00:32
y ahora es cuando uno piensa ya en la estructura
00:00:32
de la aplicación y dice ¿qué tengo que hacer yo ahora?
00:00:36
vale, pues me aparece
00:00:39
un nuevo archivo en mi sistema de archivos
00:00:40
¡silencio!
00:00:42
me aparece un nuevo archivo en mi sistema de archivos
00:00:46
entonces, este archivo
00:00:48
se tiene que guardar
00:00:50
donde van los archivos
00:00:52
que es en el map
00:00:54
entonces, hombre, en lugar de ir
00:00:55
de meter aquí el map y empezar a mezclar
00:00:58
cosas, que eso es lo que sí que es
00:01:00
feo, empezar a mezclar
00:01:02
vista con datos que están ahí
00:01:04
en otra clase, con no sé qué
00:01:06
pues vamos a hacernos un método
00:01:07
que sea guardar archivo
00:01:10
con ese nombre y ya está
00:01:12
y ese método guardar archivo
00:01:14
pues tiene sentido que esté ubicado en la
00:01:16
clase que tiene el map, etc
00:01:18
entonces esa clase se llamaba ficheros
00:01:19
entonces
00:01:22
sería estupendo si esta
00:01:24
clase ficheros, que es la que
00:01:26
trabaja silencio, que es la que trabaja
00:01:28
con ficheros, sería estupendo
00:01:30
si tuviera
00:01:32
un método
00:01:35
que fuera guardar archivo
00:01:36
y que parámetros necesitaría
00:01:38
el nombre del archivo
00:01:43
y el contenido
00:01:44
uy, perdón, que ahora lo estoy
00:01:48
llamando, no declarando, entonces
00:01:55
vale, pues entonces
00:01:57
estaría fenomenal si tuviéramos
00:02:04
un
00:02:07
método guardar archivo
00:02:09
dentro de la clase archivos
00:02:12
al que yo le paso un nombre
00:02:14
y un contenido
00:02:16
y guarda en mi estructura de archivos
00:02:17
el fichero con ese nombre y con ese contenido
00:02:19
en este caso como es un fichero nuevo
00:02:21
que vamos a guardar de cero
00:02:24
estamos en un ítem nuevo
00:02:25
pues le podemos pasar esto ya directamente
00:02:28
el nombre es el nombre que me han creado
00:02:30
contenido este
00:02:34
vale, pues este método metería en el map
00:02:35
un archivo con este nombre
00:02:39
y este contenido
00:02:41
vacío
00:02:42
entonces, este método
00:02:44
repito, tiene sentido que esté en esa clase
00:02:47
y que no haya yo ahí ese código
00:02:49
porque este método es un método que
00:02:51
lo único que hace es funcionalidades con el map
00:02:53
ya está, pues entonces tiene sentido que lo meta ahí
00:02:55
pues venga, vamos a crear
00:02:57
este método que tendrá que ser estático
00:02:59
dentro de la clase ficheros
00:03:01
pues venga
00:03:03
vamos a crear
00:03:06
perdón
00:03:08
sí, dime
00:03:10
Seguimos
00:03:12
Vale, pues vamos a hacer
00:03:14
El método este
00:03:17
Guardar archivos
00:03:19
Estático
00:03:20
En la clase ficheros
00:03:22
Este método estático
00:03:23
Pues ala
00:03:26
¿Qué es lo que hay que hacer?
00:03:31
Meter en el map un fichero cuya clave es esta
00:03:33
Y con ese contenido
00:03:36
Vamos a cambiar este nombre de variable
00:03:38
Que es muy fea así
00:03:39
Contenido
00:03:40
¿Vale? Es un método estático
00:03:42
Público
00:03:45
Aquí
00:03:46
Vale, pues este método en realidad
00:03:51
Va a ser simplemente
00:03:58
Ficheros.put
00:04:00
Nombre
00:04:03
Contenido
00:04:05
Puedes, porque me ha piado de ti
00:04:05
Pero no debería
00:04:09
Pero no llegues a sentarte y a contarle
00:04:11
La vida
00:04:16
Bueno
00:04:17
Entonces, esto tendría sentido, ¿no?
00:04:21
Aquí lo único es que uno ya se puede, cállate, uno aquí ya se puede poner a pensar, ¿vale? Entonces, ¿qué ocurre guardar archivo? Y si el archivo ya existe, bueno, si el archivo ya existe con ese nombre, ya sabemos que el put lo que hace es modificar el contenido del archivo con ese nombre y con este.
00:04:24
Ah, bueno, pues esta versión del método nos interesa porque es guardar archivo en genérica. Si no existe, guarda uno con este contenido nuevo, si no existe. Y si existe, le cambia el contenido. Entonces, bueno, vale, lo podemos dejar así, ¿no? Tiene sentido. Guarda el archivo con ese nombre en el map. Y si ya existe, le cambia el contenido.
00:04:43
venga, podemos dejarlo así, luego ya
00:05:08
en las diferentes, cuando la aplicación
00:05:10
ya está hecha, y cuando uno ya se pone
00:05:12
a hacerle un montón de pruebas, a ver cómo funciona
00:05:14
puede que haya cosas que luego no funcionan
00:05:16
como él quiera, y diga, ah no, entonces lo voy a cambiar
00:05:18
si el fichero no existe, que me avise
00:05:20
y me diga, oye, que no existe
00:05:22
¿vale? pero en principio uno se hace su primera
00:05:24
versión de la aplicación, y luego cuando hacen las pruebas
00:05:26
dice, hombre, pues, prefiero que funcione
00:05:29
de otra manera, y ahora vamos cambiando
00:05:30
pero bueno, este método
00:05:32
mete un archivo en el map con este
00:05:34
nombre y ese contenido
00:05:36
bueno, pues entonces, la opción nuevo
00:05:38
ya estaría, hemos creado
00:05:41
un archivo nuevo, ahora
00:05:43
sin contenido
00:05:45
vale, pero claro
00:05:47
hay que pensar un poco en
00:05:50
yo ejecuto esta aplicación
00:05:53
¿para qué se supone que sirve?
00:05:56
yo ejecuto esta aplicación
00:06:03
¿y para qué se supone que sirve?
00:06:05
pues cuando yo le doy el archivo
00:06:10
nuevo, pues venga
00:06:11
voy a poner un archivo que sea
00:06:13
pues yo que sé, nombres
00:06:15
al archivo nombres, ya está
00:06:16
pero claro
00:06:19
¿para qué se supone que sirve esto?
00:06:20
para que yo ahora me ponga a meter nombres
00:06:24
y cuando
00:06:25
le dé a guardar
00:06:32
cuando le dé a guardar
00:06:33
la idea es que este contenido
00:06:35
lo guarde en el archivo que le acabo de hacer nuevo
00:06:37
silencio
00:06:40
el asunto es que cuando uno
00:06:42
trata de entender la aplicación en su conjunto
00:06:44
con el que se la ha planteado
00:06:46
dice, ah bueno, es que estas opciones van ligadas
00:06:48
cuando yo le doy aquí a guardar
00:06:50
ahora mismo lógicamente no hace nada
00:06:52
cuando le doy a guardar
00:06:55
lo que yo querré
00:06:56
es que en el archivo
00:06:57
que está abierto, bien porque
00:07:00
yo le he dado a abrir que está sin hacer
00:07:02
o bien porque yo le he creado de nuevas
00:07:04
se guarde este contenido
00:07:06
eso es lo que yo quiero
00:07:08
entonces aquí como que se me ha quedado algo en el aire
00:07:10
porque ahora yo, si guardarla
00:07:13
trabajo por libre
00:07:14
yo le doy aquí a guardar en donde lo guardo
00:07:15
hombre, podría decirle
00:07:18
deme el nombre de archivo en el que lo va a guardar
00:07:20
pero es que entonces ya te doy a guardar, ¿cómo?
00:07:22
luego no tiene sentido, guardar como sí que sería esa
00:07:24
yo le doy a guardar como y me debería decir
00:07:26
dígame un nombre de archivo para guardar
00:07:28
esto como es archivo
00:07:30
pero ese sería guardar como, pero guardar
00:07:31
se supone que se guarda en el archivo
00:07:34
que tú previamente o has creado
00:07:36
de nueva, si estás aquí editando
00:07:38
o has abierto
00:07:40
entonces, ¿qué nos faltaría ahí?
00:07:41
¿Qué podemos incorporar ahí en nuestra aplicación? Pues, hombre, nos falta que nuestra aplicación tenga identificado cuál es el archivo web que está trabajando, porque todas estas opciones, la de guardar, esta en particular, la de guardar, la de tamaño, bueno, esta sí trabaja con esto, estas de aquí trabajan con el archivo que se haya abierto o se haya creado.
00:07:44
entonces
00:08:11
¿qué es lo que me falta en realidad?
00:08:14
pues hombre
00:08:18
tendría todo el sentido del mundo que mi aplicación
00:08:18
tenga aquí una variable
00:08:21
que sea
00:08:23
archivo con el que estás trabajando
00:08:24
el archivo de trabajo
00:08:26
que si no se ha abierto ninguno
00:08:31
y no se ha creado ninguno nuevo
00:08:41
inicialmente estará nul
00:08:42
archivo de trabajo cuando la aplicación arranca
00:08:43
no hay ningún archivo de trabajo todavía
00:08:46
con el que se esté trabajando
00:08:48
archivo de trabajo nul
00:08:49
pero la primera vez que ya
00:08:51
se carga con algún valor
00:08:54
será con la opción nuevo
00:08:56
¿verdad? con la opción nuevo
00:08:57
ahí
00:09:00
ahí ya sí que es
00:09:01
Andrés, ¿te quieres callar o te mueves de ahí en cuestión?
00:09:03
la próxima vez que te tenga que mandar callar
00:09:06
te mueves de ahí, ¿vale?
00:09:07
y vosotros también
00:09:13
por favor
00:09:14
vale, pues entonces ya lo que nos falta aquí es
00:09:14
hemos creado un archivo nuevo
00:09:18
se supone que es para trabajar
00:09:20
ahora con él, entonces mi archivo de trabajo
00:09:22
ya tiene un valor
00:09:24
mi archivo de trabajo ahora es
00:09:25
este
00:09:28
ya está
00:09:32
entonces hombre
00:09:36
quedaría muchísimo más bonito
00:09:39
este editor de texto
00:09:41
si además le pusiéramos una etiqueta
00:09:42
aquí que tuviera siempre el nombre
00:09:45
del archivo al que tú estás trabajando, dices nuevo
00:09:47
le das el nombre y te lo pone aquí
00:09:49
entonces de hecho vamos a hacerlo porque va a quedar
00:09:50
más clara la
00:09:53
aplicación
00:09:54
Entonces, si aquí en el diseño este vamos a poner una etiqueta que está aquí, vamos
00:09:55
a poner una etiqueta aquí arriba, por ejemplo, para guardar el nombre del archivo con el
00:10:11
que se está trabajando en cada momento.
00:10:24
La voy a llamar a esa etiqueta la variable no archivo, ¿vale?
00:10:25
Y inicialmente la etiqueta no tiene nada, su texto está vacío, inicialmente no tiene nada, ¿vale?
00:10:35
Pero ya tenemos ahí esa etiqueta para que tenga siempre el nombre del archivo de trabajo.
00:10:49
Luego entonces ahora aquí, en mi capturador este, aparte de en la variable que lleva archivo de trabajo guardar el nombre, pues lo pongo en la etiqueta.
00:10:54
Que la etiqueta se llamaba
00:11:05
No me archivo
00:11:08
Que me la habrá puesto como local
00:11:09
Con lo cual no va a poder acceder a ella
00:11:10
Sextest
00:11:12
Archivo
00:11:15
Trabajo
00:11:19
Vale, entonces no me archivo
00:11:20
O no la ve porque es una clase interna
00:11:25
Y la etiqueta está dentro del constructor
00:11:27
Pues no pasa nada
00:11:30
Vamos a subirla
00:11:32
La etiqueta que está ahí
00:11:33
La subo
00:11:36
Y ya está
00:11:38
Vale, pues entonces
00:11:41
Si ahora
00:11:44
Hacemos la primera prueba de esto
00:11:45
Vale, vamos a
00:11:52
Vamos a crear un archivo nuevo
00:11:56
Venga, vamos a crear mi primer archivo
00:11:57
Pues venga
00:11:59
De gastos
00:12:01
Ala
00:12:03
Aceptar
00:12:04
Ala, está trabajando con mi archivo de gastos
00:12:06
Ahí está, esto ya está pensado
00:12:09
Para que yo haga
00:12:11
Venga, pues nada
00:12:12
No sé qué
00:12:14
Hago mis cosas
00:12:15
Ahí yo tengo ya mi archivo que está abierto en ese momento
00:12:19
Está abierto, lo he creado de nuevas
00:12:22
Lo ha metido nuevo
00:12:24
¿Vale?
00:12:25
Y ahora ya, pues que yo ya me voy de aquí
00:12:27
Pues ya le daría la opción guardar
00:12:29
Entonces me falta por capturar las demás
00:12:31
La opción guardar
00:12:33
En la opción guardar, este contenido
00:12:35
Tiene que pasar al archivo
00:12:37
En la opción guardar
00:12:40
Este contenido pasa al archivo
00:12:42
¿Vale?
00:12:43
y ya está
00:12:44
pasa el archivo para que se quede ahí
00:12:46
entonces la opción abrir
00:12:48
la opción abrir
00:12:50
pues habrá que decirle
00:12:51
¿qué nombre de archivo quiere usted editar?
00:12:53
se le da el nombre de archivo
00:12:57
lo busca en el map
00:12:58
y pondrá su contenido aquí
00:12:59
para que podamos seguir trabajando con él
00:13:01
guardar como
00:13:03
pedirá un nombre
00:13:05
porque ya no le valdrá este que tenemos aquí
00:13:07
pedirá un nombre
00:13:09
cerrar
00:13:10
pues el archivo de trabajo fuera
00:13:11
todo este texto fuera, se queda
00:13:14
todo limpio, vale, bueno pues
00:13:16
entonces ahora ya
00:13:18
con esta estructura
00:13:18
que ya la tenemos
00:13:21
bastante al completo
00:13:22
ahora ya podéis completar
00:13:25
las funcionalidades vosotros
00:13:27
abrir, guardar, cerrar
00:13:29
ya tenemos todo lo que hace falta
00:13:31
para ya que funcione
00:13:33
el editor este
00:13:35
en utilidades
00:13:37
pues bueno, esto ya es de programar
00:13:40
cada una de estas opciones, ahora ya
00:13:42
Así que aquí hay que pasar de mayúsculas a minúsculas.
00:13:43
Pero esto hacerlo más bonito, porque a ver, de mayúsculas a minúsculas, a ver esto.
00:13:52
A ver, sí, es que está mal.
00:14:06
No me refería a ponerlo todo en minúscula, a ponerlo todo en mayúscula.
00:14:07
O sea, está mal, es verdad que no está muy, espera, lo vamos a, un segundito.
00:14:10
¿Qué estamos aquí?
00:14:21
Vale.
00:14:23
estos ítems de aquí
00:14:23
en realidad esto
00:14:28
quedaría más claro
00:14:30
si lo llamamos minúsculas
00:14:34
y este si se llama
00:14:37
mayúsculas
00:14:45
vale, entonces
00:14:46
¿a qué me refiero con estos componentes?
00:14:52
con estos ítems
00:14:55
pues algo más
00:14:56
bonito que pasar a mayúsculas
00:14:58
sin más
00:15:02
para que se vea
00:15:02
Vale, pues nada, vamos a imaginarnos que estamos trabajando ya con un archivo de texto,
00:15:07
porque lo hemos abierto, porque lo hemos creado nuevo, o lo que sea, tenemos ahí nuestro archivo.
00:15:12
Entonces, las opciones de mayúsculas o minúsculas, ¿cuáles serán?
00:15:21
Yo selecciono, lo que a mí me dé la gana seleccionar, y cuando dé a mayúsculas o a minúsculas,
00:15:26
todo va a pasar a minúsculas
00:15:33
y cuando dé a mayúsculas
00:15:35
todo va a pasar a mayúsculas
00:15:36
tamaño pues nada
00:15:39
es mostrar el tamaño del archivo que hay aquí
00:15:44
y contar líneas
00:15:46
eso es mucho más sencillo
00:15:47
y esto es un pelín más
00:15:50
porque tenéis que pensar
00:15:52
cómo hacéis para coger solo lo que está seleccionado
00:15:53
en realidad es una tontería también
00:15:56
entonces todo esto
00:15:58
se hace sobre el fichero
00:16:00
con el que se está trabajando que está aquí
00:16:02
y luego ya
00:16:03
pues una vez que se ha pasado mayúsculas
00:16:06
minúsculas, una vez que uno ha escrito lo que quiera
00:16:09
lo que sea, que uno le da a guardar
00:16:10
pues ya está, ese contenido se guarda
00:16:13
que le damos a abrir, se abrirá
00:16:15
otro, entonces hombre
00:16:17
cuando le damos a abrir
00:16:19
esto se puede ir complicando, lo ideal sería que te
00:16:20
dijera, desea guardar
00:16:23
el fichero existente, pues yo le doy a abrir y tengo
00:16:25
ya uno abierto, la opción que se plantea
00:16:26
es, oye, lo vas a
00:16:29
cerrar sin
00:16:30
guardar lo que hay, desea guardar lo
00:16:32
existente. Si le das así, ¿no? Pues te lo guarda.
00:16:34
Todo esto
00:16:38
se puede dejar ya todo lo bonito
00:16:38
y completo, todo lo más parecido a un editor de texto
00:16:40
normal y en realidad de forma
00:16:42
fácil, de forma
00:16:44
sencilla, ¿vale?
00:16:46
Venga, pues entonces, ahora, siguiente
00:16:48
paso.
00:16:50
Os planteáis, os hacéis
00:16:53
las de este menú.
00:16:54
Abrir, guardar,
00:16:57
guardar como y cerrar.
00:16:59
¿Vale? Estas cuatro de aquí.
00:17:01
Vale.
00:17:08
Gracias.
00:17:09
- Subido por:
- Raquel G.
- Licencia:
- Todos los derechos reservados
- Visualizaciones:
- 8
- Fecha:
- 6 de mayo de 2024 - 19:41
- Visibilidad:
- Clave
- Centro:
- IES ROSA CHACEL
- Duración:
- 17′ 11″
- Relación de aspecto:
- 1.78:1
- Resolución:
- 1920x1080 píxeles
- Tamaño:
- 75.49 MBytes