Attempt to fix saving and reading of files as per T3-783 git-svn-id: https://taverna.googlecode.com/svn/taverna/utils/net.sf.taverna.t2.lang/branches/maintenance@16825 bf327186-88b3-11dd-a302-d386e5130c1c
Project: http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/commit/d5d915d0 Tree: http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/tree/d5d915d0 Diff: http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/diff/d5d915d0 Branch: refs/heads/master Commit: d5d915d02fdd936555e0b947879fbfe6c4e189b0 Parents: 7f23d78 Author: [email protected] <[email protected]@bf327186-88b3-11dd-a302-d386e5130c1c> Authored: Thu Mar 6 12:51:06 2014 +0000 Committer: [email protected] <[email protected]@bf327186-88b3-11dd-a302-d386e5130c1c> Committed: Thu Mar 6 12:51:06 2014 +0000 ---------------------------------------------------------------------- ui/pom.xml | 5 +++ .../net/sf/taverna/t2/lang/ui/FileTools.java | 33 +++++--------------- 2 files changed, 12 insertions(+), 26 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/d5d915d0/ui/pom.xml ---------------------------------------------------------------------- diff --git a/ui/pom.xml b/ui/pom.xml index de2b422..d2839fd 100644 --- a/ui/pom.xml +++ b/ui/pom.xml @@ -17,6 +17,11 @@ <version>${project.version}</version> </dependency> <dependency> + <groupId>commons-io</groupId> + <artifactId>commons-io</artifactId> + <version>${commons.io.version}</version> + </dependency> + <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> </dependency> http://git-wip-us.apache.org/repos/asf/incubator-taverna-workbench/blob/d5d915d0/ui/src/main/java/net/sf/taverna/t2/lang/ui/FileTools.java ---------------------------------------------------------------------- diff --git a/ui/src/main/java/net/sf/taverna/t2/lang/ui/FileTools.java b/ui/src/main/java/net/sf/taverna/t2/lang/ui/FileTools.java index 8fae745..4aa5bb2 100644 --- a/ui/src/main/java/net/sf/taverna/t2/lang/ui/FileTools.java +++ b/ui/src/main/java/net/sf/taverna/t2/lang/ui/FileTools.java @@ -4,18 +4,15 @@ package net.sf.taverna.t2.lang.ui; import java.awt.Component; -import java.io.BufferedReader; -import java.io.BufferedWriter; import java.io.File; -import java.io.FileNotFoundException; -import java.io.FileReader; -import java.io.FileWriter; import java.io.IOException; +import java.nio.charset.StandardCharsets; import java.util.prefs.Preferences; import javax.swing.JFileChooser; import javax.swing.JOptionPane; +import org.apache.commons.io.FileUtils; import org.apache.log4j.Logger; /** @@ -25,6 +22,8 @@ import org.apache.log4j.Logger; public class FileTools { private static Logger logger = Logger.getLogger(FileTools.class); + + public static boolean saveStringToFile(Component parent, String dialogTitle, String extension, String content) { JFileChooser fileChooser = new JFileChooser(); @@ -72,9 +71,7 @@ public class FileTools { return false; } } - BufferedWriter out = new BufferedWriter(new FileWriter(file)); - out.write(content); - out.close(); + FileUtils.writeStringToFile(file, content, StandardCharsets.UTF_8.name()); logger.info("Saved content by overwriting " + file); return true; } catch (IOException ex) { @@ -105,25 +102,9 @@ public class FileTools { if (fileChooser.showOpenDialog(parent) == JFileChooser.APPROVE_OPTION) { File selectedFile = fileChooser.getSelectedFile(); - + try { - BufferedReader reader = new BufferedReader(new FileReader( - selectedFile)); - - String line; - StringBuffer buffer = new StringBuffer(); - while ((line = reader.readLine()) != null) { - buffer.append(line); - buffer.append("\n"); - } - reader.close(); - - return buffer.toString(); - - } catch (FileNotFoundException ffe) { - JOptionPane.showMessageDialog(parent, "File '" - + selectedFile.getName() + "' not found", - "File not found", JOptionPane.ERROR_MESSAGE); + return FileUtils.readFileToString(selectedFile, StandardCharsets.UTF_8.name()); } catch (IOException ioe) { JOptionPane.showMessageDialog(parent, "Can not read file '" + selectedFile.getName() + "'", "Can not read file",
