| @ -0,0 +1,10 @@ | |||||
| <?xml version="1.0" encoding="UTF-8"?> | |||||
| <classpath> | |||||
| <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-17"> | |||||
| <attributes> | |||||
| <attribute name="module" value="true"/> | |||||
| </attributes> | |||||
| </classpathentry> | |||||
| <classpathentry kind="src" path="src"/> | |||||
| <classpathentry kind="output" path="bin"/> | |||||
| </classpath> | |||||
| @ -0,0 +1,17 @@ | |||||
| <?xml version="1.0" encoding="UTF-8"?> | |||||
| <projectDescription> | |||||
| <name>MyCat</name> | |||||
| <comment></comment> | |||||
| <projects> | |||||
| </projects> | |||||
| <buildSpec> | |||||
| <buildCommand> | |||||
| <name>org.eclipse.jdt.core.javabuilder</name> | |||||
| <arguments> | |||||
| </arguments> | |||||
| </buildCommand> | |||||
| </buildSpec> | |||||
| <natures> | |||||
| <nature>org.eclipse.jdt.core.javanature</nature> | |||||
| </natures> | |||||
| </projectDescription> | |||||
| @ -0,0 +1,2 @@ | |||||
| eclipse.preferences.version=1 | |||||
| encoding/<project>=UTF-8 | |||||
| @ -0,0 +1,14 @@ | |||||
| eclipse.preferences.version=1 | |||||
| org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled | |||||
| org.eclipse.jdt.core.compiler.codegen.targetPlatform=17 | |||||
| org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve | |||||
| org.eclipse.jdt.core.compiler.compliance=17 | |||||
| org.eclipse.jdt.core.compiler.debug.lineNumber=generate | |||||
| org.eclipse.jdt.core.compiler.debug.localVariable=generate | |||||
| org.eclipse.jdt.core.compiler.debug.sourceFile=generate | |||||
| org.eclipse.jdt.core.compiler.problem.assertIdentifier=error | |||||
| org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled | |||||
| org.eclipse.jdt.core.compiler.problem.enumIdentifier=error | |||||
| org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning | |||||
| org.eclipse.jdt.core.compiler.release=enabled | |||||
| org.eclipse.jdt.core.compiler.source=17 | |||||
| @ -0,0 +1,25 @@ | |||||
| PIDE UNA CADENA DE CARACTERES, LA CUAL VA ESCRIBIENDO EN UN ARCHIVO DEFINIDO HASTA QUE SE ESCRIBA UNA CONTRABARRA, | |||||
| LA CUAL HARÁ PARAR EL PROGRAMA | |||||
| Se comprueba que el archivo no existe, si existe se escribirá siguiendo lo que ya había escrito, si no existe, | |||||
| creará el archivo y empezará a escribir. | |||||
| El programa crea un bucle con el cual, mediante la cadena de caracteres obtenida por pantalla, va recorriéndola | |||||
| hasta que se encuentra una contrabarra o llega al final, en el caso de encontrar una contrabarra, el programa | |||||
| finaliza y los caracteres que hayan a la derecha de ésta, no serán escritos en el archivo. | |||||
| El programa no para hasta encontrar una contrabarra que se le haya pasado por pantalla en la cadena. | |||||
| He tenido que obtener la contrabarra mediante un String con dos contrabarras y definiéndola con el método | |||||
| ".charAt(0)". | |||||
| ``` | |||||
| Introduce caracteres(introduce la contrabarra para parar): | |||||
| ceik | |||||
| Introduce caracteres(introduce la contrabarra para parar): | |||||
| efew | |||||
| Introduce caracteres(introduce la contrabarra para parar): | |||||
| ef\fr | |||||
| Resultado fichero: | |||||
| ceikefewef | |||||
| ``` | |||||
| @ -0,0 +1,3 @@ | |||||
| module MyCat { | |||||
| exports myCat.com.daniminguet.com.es; | |||||
| } | |||||
| @ -0,0 +1,83 @@ | |||||
| package myCat.com.daniminguet.com.es; | |||||
| import java.io.BufferedReader; | |||||
| import java.io.BufferedWriter; | |||||
| import java.io.File; | |||||
| import java.io.FileReader; | |||||
| import java.io.FileWriter; | |||||
| import java.io.IOException; | |||||
| import java.util.Scanner; | |||||
| public class MyCat { | |||||
| //Ruta del archivo donde se escribirá el resultado | |||||
| public static final String RUTA = "C:\\Users\\Dani\\OneDrive\\Documentos\\AccesoADatos\\fichero2.txt"; | |||||
| public static void main(String[] args) { | |||||
| File archivo = new File(RUTA); | |||||
| try{ | |||||
| //Si el archivo existe, escribirá siguiendo el contenido que ya consta en él | |||||
| if(archivo.exists()) { | |||||
| FileWriter fw = new FileWriter(archivo, true); | |||||
| escribir(fw); | |||||
| fw.flush(); | |||||
| fw.close(); | |||||
| //Si el archivo no existe, lo creará y empezará a escribir en él | |||||
| } else { | |||||
| FileWriter fw=new FileWriter(archivo); | |||||
| escribir(fw); | |||||
| fw.flush(); | |||||
| fw.close(); | |||||
| } | |||||
| //Se muestra la cadena de caracteres escritos en el archivo antes de encontrar una contrabarra | |||||
| FileReader frResultado = new FileReader(RUTA); | |||||
| BufferedReader brResultado = new BufferedReader(frResultado); | |||||
| System.out.println("Resultado fichero:"); | |||||
| System.out.println(brResultado.readLine()); | |||||
| frResultado.close(); | |||||
| brResultado.close(); | |||||
| }catch(IOException e){ | |||||
| System.out.println("Error E/S: "+e); | |||||
| } | |||||
| } | |||||
| public static void escribir(FileWriter fw) throws IOException { | |||||
| //Lector por pantalla | |||||
| Scanner lector = new Scanner(System.in); | |||||
| //Boolean que define si encuentra una contrabarra | |||||
| boolean parar = false; | |||||
| //String donde se obtendrá la cadena de caracteres pasada por pantalla | |||||
| String recibePorPantalla; | |||||
| //String de donde se obtiene la contrabarra | |||||
| String contrabarra = "\\"; | |||||
| do { | |||||
| //Obtiene una cadena de caracteres por pantalla | |||||
| System.out.println("Introduce caracteres(introduce la contrabarra para parar):"); | |||||
| recibePorPantalla = lector.nextLine(); | |||||
| try { | |||||
| for(int i = 0; i < recibePorPantalla.length(); i++) { | |||||
| //Si encuentra una contrabarra en la cadena, parará el bucle | |||||
| if(recibePorPantalla.charAt(i) == contrabarra.charAt(0)) { | |||||
| parar = true; | |||||
| break; | |||||
| //Si no encuentra contrabarra, irá escribiendo en el archivo de caracter en caracter | |||||
| } else { | |||||
| fw.write(recibePorPantalla.charAt(i)); | |||||
| } | |||||
| System.out.print(recibePorPantalla.charAt(i)); | |||||
| } | |||||
| System.out.print("\n"); | |||||
| } catch(NullPointerException npe) { | |||||
| } | |||||
| } while(parar == false); | |||||
| } | |||||
| } | |||||