Document.java 1.9KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. package rocks.zipcode;
  2. import java.io.*;
  3. import java.nio.file.Files;
  4. import java.nio.file.*;
  5. import java.util.Arrays;
  6. import java.util.List;
  7. /**
  8. * @author leon on 16/11/2018.
  9. */
  10. public class Document implements DocumentInterface {
  11. private final FileWriter fileWriter;
  12. private final File file;
  13. public Document(String fileName) throws IOException {
  14. this(new File(fileName));
  15. }
  16. public Document(File file) throws IOException {
  17. this.file = file;
  18. this.fileWriter = new FileWriter(file);
  19. }
  20. @Override
  21. public void write(String contentToBeWritten) {
  22. try{
  23. fileWriter.write(contentToBeWritten);
  24. fileWriter.flush();
  25. fileWriter.close();
  26. } catch (IOException io) {
  27. io.printStackTrace();
  28. }
  29. }
  30. @Override
  31. public void write(Integer lineNumber, String valueToBeWritten) {
  32. }
  33. @Override
  34. public String read(Integer lineNumber){
  35. return null;
  36. }
  37. @Override
  38. public String read() throws IOException{
  39. BufferedReader readFile = new BufferedReader(new FileReader(file));
  40. String fileAsString;
  41. try {
  42. StringBuilder sb = new StringBuilder();
  43. String fileLine = readFile.readLine();
  44. while (fileLine != null) {
  45. sb.append(fileLine);
  46. sb.append(System.lineSeparator());
  47. fileLine = readFile.readLine();
  48. }
  49. fileAsString = sb.toString().trim();
  50. } finally {
  51. readFile.close();
  52. }
  53. return fileAsString;
  54. }
  55. @Override
  56. public void replaceAll(String stringToReplace, String replacementString) {
  57. }
  58. @Override
  59. public void overWrite(String content) {
  60. }
  61. public List<String> toList() {
  62. return null;
  63. }
  64. @Override
  65. public File getFile() {
  66. return file;
  67. }
  68. @Override
  69. public String toString() {
  70. return null;
  71. }
  72. }