Class Files


  • public class Files
    extends Object
    Utility methods related to files.
    Author:
    Yvonne Wang, Alex Ruiz
    • Constructor Detail

      • Files

        private Files()
    • Method Detail

      • fileNamesIn

        public static List<String> fileNamesIn​(String dirName,
                                               boolean recurse)
        Returns the names of the files inside the specified directory.
        Parameters:
        dirName - the name of the directory to start the search from.
        recurse - if true, we will look in subdirectories.
        Returns:
        the names of the files inside the specified directory.
        Throws:
        IllegalArgumentException - if the given directory name does not point to an existing directory.
      • fileNamesIn

        private static List<String> fileNamesIn​(File dir,
                                                boolean recurse)
        Returns the names of the files inside the specified directory.
        Parameters:
        dir - the name of the directory to start the search from.
        recurse - if true, we will look in subdirectories.
        Returns:
        the names of the files inside the specified directory.
      • temporaryFolder

        @Deprecated
        public static File temporaryFolder()
        Deprecated.
        Use either TempDir or TemporaryFolder
        Returns the system's temporary directory.
        Returns:
        the system's temporary directory.
        Throws:
        RuntimeException - if this method cannot find or create the system's temporary directory.
      • temporaryFolderPath

        public static String temporaryFolderPath()
        Returns the path of the system's temporary directory. This method appends the system's file separator at the end of the path.
        Returns:
        the path of the system's temporary directory.
      • newTemporaryFile

        public static File newTemporaryFile()
        Creates a new file in the system's temporary directory. The name of the file will be the result of:
         concat(UUID.randomUUID().toString(), ".txt");
        Returns:
        the created file.
      • newTemporaryFolder

        public static File newTemporaryFolder()
        Creates a new directory in the system's temporary directory. The name of the directory will be the result of:
         UUID.randomUUID().toString();
        Returns:
        the created file.
      • newFile

        public static File newFile​(String path)
        Creates a new file using the given path.
        Parameters:
        path - the path of the new file.
        Returns:
        the new created file.
        Throws:
        RuntimeException - if the path belongs to an existing non-empty directory.
        RuntimeException - if the path belongs to an existing file.
        UncheckedIOException - if any I/O error is thrown when creating the new file.
      • newFolder

        public static File newFolder​(String path)
        Creates a new directory using the given path.
        Parameters:
        path - the path of the new directory.
        Returns:
        the new created directory.
        Throws:
        RuntimeException - if the path belongs to an existing non-empty directory.
        RuntimeException - if the path belongs to an existing file.
        RuntimeException - if any I/O error is thrown when creating the new directory.
      • createFileIfPathIsNotANonEmptyDirectory

        private static File createFileIfPathIsNotANonEmptyDirectory​(String path)
      • currentFolder

        public static File currentFolder()
        Returns the current directory.
        Returns:
        the current directory.
        Throws:
        UncheckedIOException - if the current directory cannot be obtained.
      • delete

        @Deprecated
        public static void delete​(File file)
        Deprecated.
        use https://commons.apache.org/proper/commons-io/javadocs/api-release/org/apache/commons/io/FileUtils.html#forceDelete-java.io.File- instead
        Deletes the given file or directory.
        Parameters:
        file - the file or directory to delete.
      • contentOf

        public static String contentOf​(File file,
                                       String charsetName)
        Loads the text content of a file into a character string.
        Parameters:
        file - the file.
        charsetName - the name of the character set to use.
        Returns:
        the content of the file.
        Throws:
        IllegalArgumentException - if the given character set is not supported on this platform.
        UncheckedIOException - if an I/O exception occurs.
      • contentOf

        public static String contentOf​(File file,
                                       Charset charset)
        Loads the text content of a file into a character string.
        Parameters:
        file - the file.
        charset - the character set to use.
        Returns:
        the content of the file.
        Throws:
        NullPointerException - if the given charset is null.
        UncheckedIOException - if an I/O exception occurs.
      • linesOf

        public static List<String> linesOf​(File file,
                                           Charset charset)
        Loads the text content of a file into a list of strings, each string corresponding to a line. The line endings are either \n, \r or \r\n.
        Parameters:
        file - the file.
        charset - the character set to use.
        Returns:
        the content of the file.
        Throws:
        NullPointerException - if the given charset is null.
        UncheckedIOException - if an I/O exception occurs.
      • linesOf

        public static List<String> linesOf​(File file,
                                           String charsetName)
        Loads the text content of a file into a list of strings, each string corresponding to a line. The line endings are either \n, \r or \r\n.
        Parameters:
        file - the file.
        charsetName - the name of the character set to use.
        Returns:
        the content of the file.
        Throws:
        NullPointerException - if the given charset is null.
        UncheckedIOException - if an I/O exception occurs.
      • checkArgumentCharsetIsSupported

        private static void checkArgumentCharsetIsSupported​(String charsetName)