From: Bastian Dehn Date: Fri, 4 Feb 2022 11:59:21 +0000 (+0100) Subject: add: interface and read file X-Git-Url: https://gitweb.hhaalo.de/?a=commitdiff_plain;h=479baf5af29783b6046e542a32c16508db1c5ac1;p=discspan-java.git add: interface and read file --- diff --git a/CMakeLists.txt b/CMakeLists.txt index 174c029..4b431d9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -14,7 +14,9 @@ set(SRCLIB_FILES "${SRCLIB_PREFIX}/IMedium.java" "${SRCLIB_PREFIX}/Medium.java" "${SRCLIB_PREFIX}/IMediumCollection.java" - "${SRCLIB_PREFIX}/MediumCollection.java") + "${SRCLIB_PREFIX}/MediumCollection.java" + "${SRCLIB_PREFIX}/IFileHandler.java" + "${SRCLIB_PREFIX}/FileHandler.java") add_jar(spandisc "${SRCLIB_FILES}") @@ -24,6 +26,6 @@ set(SRC_FILES "${SRC_PREFIX}/Iparameter.java" "${SRC_PREFIX}/parameter.java") -add_jar(discspan "${SRC_FILES}" - INCLUDE_JARS "${GNUGETOPT}" "spandisc.jar" +add_jar(discspan "${SRC_FILES}" "${SRCLIB_FILES}" + INCLUDE_JARS "${GNUGETOPT}" MANIFEST "src/manifest.mf") diff --git a/src/de/hhaalo/discspan/discspan.java b/src/de/hhaalo/discspan/discspan.java index 6856ccd..d6aa5b1 100644 --- a/src/de/hhaalo/discspan/discspan.java +++ b/src/de/hhaalo/discspan/discspan.java @@ -1,5 +1,6 @@ package de.hhaalo.discspan; +import de.hhaalo.spandisc.*; import java.io.File; public class discspan @@ -20,5 +21,8 @@ public class discspan System.err.println("ERROR: " + param.getInput() + " file does not exists"); } + + IFileHandler filehandler = new FileHandler(); + IMedium srcmedium = filehandler.readFile(param.getInput()); } } diff --git a/src/de/hhaalo/spandisc/FileHandler.java b/src/de/hhaalo/spandisc/FileHandler.java new file mode 100644 index 0000000..bfd8a51 --- /dev/null +++ b/src/de/hhaalo/spandisc/FileHandler.java @@ -0,0 +1,41 @@ +package de.hhaalo.spandisc; + +import java.io.File; +import java.io.FileNotFoundException; +import java.util.Scanner; +import java.util.ArrayList; + +public class FileHandler implements IFileHandler +{ + public IMedium readFile(String filepath) + { + IMedium medium = new Medium(); + + IFileSize data = new FileSize(); + ArrayList datalist = new ArrayList(); + + File inFile = new File(filepath); + try { + Scanner fileReader = new Scanner(inFile); + File dataFile = null; + while (fileReader.hasNextLine()) { + data.setName(fileReader.nextLine()); + dataFile = new File(data.getName()); + data.setFileSize(dataFile.length()); + datalist.add(data); + } + } catch (FileNotFoundException ex) { + System.err.println(ex.getMessage()); + } + + IFileSize[] dataarray = new IFileSize[datalist.size()]; + dataarray = datalist.toArray(dataarray); + medium.setFileSizeArray(dataarray); + + return medium; + } + + public void writeFile(String filepath, IMedium disc) + { + } +} diff --git a/src/de/hhaalo/spandisc/IFileHandler.java b/src/de/hhaalo/spandisc/IFileHandler.java new file mode 100644 index 0000000..1f93a04 --- /dev/null +++ b/src/de/hhaalo/spandisc/IFileHandler.java @@ -0,0 +1,7 @@ +package de.hhaalo.spandisc; + +public interface IFileHandler +{ + public IMedium readFile(String filepath); + public void writeFile(String filepath, IMedium disc); +}