@@ -185,7 +185,7 @@ public void modificarAlumno() {
185
185
186
186
// recorro el arrayList identificando lineas
187
187
for (int a = 0 ; a < lineas3 .size (); a ++) {
188
- System .out .println ("Linea: " + a + " - " + lineas3 .get (a ));
188
+ // System.out.println("Linea: " + a + " - " + lineas3.get(a));
189
189
190
190
// transformo el contenido de 'linea3' en una secuencia de elementos
191
191
String oracion = lineas3 .get (a ).toString ();
@@ -196,50 +196,63 @@ public void modificarAlumno() {
196
196
// ubicandolos dentro de un arrayList
197
197
String [] terminos = oracion .split ("," );
198
198
System .out .println ("terminos: " +terminos );
199
+ System .out .println ("oracion: " +oracion );
199
200
200
201
// vuelvo a false el elemento de busqueda antes de cada ciclo
201
202
encontrado = false ;
202
203
203
204
// comparo el término de búsqueda con los elementos del arrayList anterior
204
205
205
- for (String elemento : terminos ) {
206
- if (elemento .equals (aBuscar )) {
207
- encontrado = true ;
206
+ for (int b =0 ; b <=4 ;b ++){
207
+ if (terminos [b ].equals (aBuscar )){
208
+ encontrado =true ;
209
+ System .out .println ("terminos [" +b +"] " +terminos [b ]);
210
+ System .out .println ("encontrado " +encontrado );
208
211
}
212
+
213
+ // si el elemento buscado se encuentra: se notifica, se muestra el registro completo.
214
+ // Luego se sigue recorriendo otros registros buscando nuevas coincidencias.
215
+
216
+ if (encontrado ) {
217
+ System .out .println ("El término " + aBuscar + " se ha encontrado" );
218
+ JOptionPane .showMessageDialog (null , "El término " + aBuscar + " se ha encontrado" , "Fin de la búsqueda" ,
219
+ JOptionPane .INFORMATION_MESSAGE );
220
+ JOptionPane .showMessageDialog (null , "Los datos del registro son " + "\n " + "(El número inicial es el «registro»)" + "\n " +a +"- " + lineas3 .get (a ),
221
+ "Fin de la búsqueda" ,
222
+ JOptionPane .INFORMATION_MESSAGE );
223
+
224
+ //ingreso del texto que a modificar
225
+ String loNuevo =JOptionPane .showInputDialog ("Aquí se puede modificar el elemento encontrado «" +aBuscar +"» por uno nuevo" );
226
+ //System.out.println(lineas3);
227
+
228
+ //System.out.println("terminos antes "+terminos[b]);
229
+ //se reemplaza el término hallado por su nuevo valor
230
+ terminos [b ] = loNuevo ;
231
+ //System.out.println("terminos despues "+terminos[b]);
232
+ //System.out.println("lonuevo "+loNuevo);
233
+ //se agrega la nueva linea modificada al arrayList para guardarlo en el archivo
234
+ lineas3 .set (a , String .join ("," , terminos ));
235
+
236
+ System .out .println (lineas3 );
237
+
238
+
239
+ }
240
+ break ;
209
241
}
210
- // si el elemento buscado se encuentra: se notifica, se muestra el registro
211
- // completo. Luego se sigue recorriendo otros registros buscando nuevas
212
- // coincidencias
213
- if (encontrado ) {
214
- System .out .println ("El término " + aBuscar + " se ha encontrado" );
215
- JOptionPane .showMessageDialog (null , "El término " + aBuscar + " se ha encontrado" , "Fin de la búsqueda" ,
216
- JOptionPane .ERROR_MESSAGE );
217
- JOptionPane .showMessageDialog (null , "Los datos del registro son " + "\n " + "(El número inicial es el «registro»)" + "\n " +a +"- " + lineas3 .get (a ),
218
- "Fin de la búsqueda" ,
219
- JOptionPane .ERROR_MESSAGE );
220
-
221
- //ingreso del texto que se modifica
222
- String loNuevo =JOptionPane .showInputDialog ("Aquí se puede modificar el elemento buscado «" +aBuscar +"» por uno nuevo" );
223
- System .out .println (lineas3 );
224
-
225
- //String[] elemento.set(a,loNuevo);
226
- System .out .println (lineas3 );
227
-
228
-
229
-
230
- }
242
+
231
243
232
244
}
233
245
// Si se completó toda la busqueda sin ninguna coincidencia, se muestra un
234
246
// mensaje
235
247
if (encontrado ) {
236
248
237
- } else {
249
+ }
250
+ else {
238
251
JOptionPane .showMessageDialog (null , "El término " + aBuscar + " NO se ha encontrado" , "Fin de la búsqueda" ,
239
252
JOptionPane .ERROR_MESSAGE );
240
253
}
241
254
242
- // Escribir las líneas restantes de vuelta al archivo de texto
255
+ // Escribir las líneas restantes de vuelta al archivo de texto
243
256
try {
244
257
BufferedWriter bw3 = new BufferedWriter (new FileWriter ("alumnos.txt" ));
245
258
@@ -251,10 +264,11 @@ public void modificarAlumno() {
251
264
252
265
System .out .println ("La línea ha sido modificada en el archivo." );
253
266
JOptionPane .showMessageDialog (null , "La linea ha sido modificada en el archivo." , "Acción realizada" ,
254
- JOptionPane .ERROR_MESSAGE );
267
+ JOptionPane .INFORMATION_MESSAGE );
255
268
} catch (IOException e ) {
256
269
e .printStackTrace ();
257
- }
270
+ //}
271
+ }
258
272
259
273
}
260
274
0 commit comments