Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 11 additions & 0 deletions .project
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,15 @@
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
<filteredResources>
<filter>
<id>1767811317193</id>
<name></name>
<type>30</type>
<matcher>
<id>org.eclipse.core.resources.regexFilterMatcher</id>
<arguments>node_modules|\.git|__CREATED_BY_JAVA_LANGUAGE_SERVER__</arguments>
</matcher>
</filter>
</filteredResources>
</projectDescription>
54 changes: 54 additions & 0 deletions src/simplejavatexteditor/FileManager.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
package simplejavatexteditor;

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Scanner;

/**
* [REFACTORING 2] Extract Class:
* Esta clase asume la responsabilidad de leer y escribir archivos
* liberando a la UI de estas tareas (Principio SRP).
*/
public class FileManager {

// Método para leer contenido (usado en Drag & Drop)
public String readContent(String fileName) {
String content = "";
try (FileInputStream fis = new FileInputStream(new File(fileName))) {
byte[] ba = new byte[fis.available()];
fis.read(ba);
content = new String(ba);
} catch (Exception ex) {
ex.printStackTrace();
}
return content;
}

// Método para abrir archivos de texto normales
public String openFile(File file) {
String content = "";
try (Scanner scan = new Scanner(new FileReader(file))) {
StringBuilder sb = new StringBuilder();
while (scan.hasNext()) {
sb.append(scan.nextLine()).append("\n");
}
content = sb.toString();
} catch (Exception ex) {
System.err.println(ex.getMessage());
}
return content;
}

// Método para guardar archivos
public void saveFile(File file, String content) {
try (BufferedWriter out = new BufferedWriter(new FileWriter(file))) {
out.write(content);
} catch (IOException ex) {
System.err.println(ex.getMessage());
}
}
}
Loading