From dda85bea68207241dbb3a849c84e706350820155 Mon Sep 17 00:00:00 2001 From: felmer <felmer> Date: Wed, 16 May 2007 14:00:27 +0000 Subject: [PATCH] add loadText() SVN: 90 --- .../cisd/common/utilities/FileUtilities.java | 41 +++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/common/source/java/ch/systemsx/cisd/common/utilities/FileUtilities.java b/common/source/java/ch/systemsx/cisd/common/utilities/FileUtilities.java index 327248f58b0..245328e8f77 100644 --- a/common/source/java/ch/systemsx/cisd/common/utilities/FileUtilities.java +++ b/common/source/java/ch/systemsx/cisd/common/utilities/FileUtilities.java @@ -16,8 +16,12 @@ package ch.systemsx.cisd.common.utilities; +import java.io.BufferedReader; import java.io.File; import java.io.FileFilter; +import java.io.FileNotFoundException; +import java.io.FileReader; +import java.io.IOException; import org.apache.log4j.Level; import org.apache.log4j.Logger; @@ -38,6 +42,43 @@ import ch.systemsx.cisd.common.logging.LogFactory; public class FileUtilities { private static final Logger machineLog = LogFactory.getLogger(LogCategory.MACHINE, FileUtilities.class); + + /** + * Loads the specified text file. + * + * @return text from <code>text</code>. All newline characters are '\n'. + */ + public static String loadText(File file) + { + FileReader fileReader = null; + try + { + fileReader = new FileReader(file); + BufferedReader bufferedReader = new BufferedReader(fileReader); + StringBuilder builder = new StringBuilder(); + String line; + while ((line = bufferedReader.readLine()) != null) + { + builder.append(line).append('\n'); + } + return new String(builder); + } catch (IOException ex) + { + throw new EnvironmentFailureException("Error when loading file " + file, ex); + } finally + { + if (fileReader != null) + { + try + { + fileReader.close(); + } catch (IOException ex) + { + throw new EnvironmentFailureException("Couldn't close file " + file, ex); + } + } + } + } /** * Checks whether a <var>directory</var> of some <var>kind</var> is fully accessible to the program. -- GitLab