diff --git a/source/net/sourceforge/filebot/ui/panel/rename/NamesListTransferablePolicy.java b/source/net/sourceforge/filebot/ui/panel/rename/NamesListTransferablePolicy.java index a40ecfff..c9ec4621 100644 --- a/source/net/sourceforge/filebot/ui/panel/rename/NamesListTransferablePolicy.java +++ b/source/net/sourceforge/filebot/ui/panel/rename/NamesListTransferablePolicy.java @@ -32,7 +32,7 @@ class NamesListTransferablePolicy extends FileTransferablePolicy { private final List model; - + public NamesListTransferablePolicy(List model) { this.model = model; } @@ -78,10 +78,10 @@ class NamesListTransferablePolicy extends FileTransferablePolicy { protected void load(String string) { List values = new ArrayList(); - Scanner scanner = new Scanner(string).useDelimiter(LINE_SEPARATOR); + Scanner scanner = new Scanner(string); - while (scanner.hasNext()) { - String line = scanner.next(); + while (scanner.hasNextLine()) { + String line = scanner.nextLine(); if (line.trim().length() > 0) { values.add(line); @@ -116,10 +116,10 @@ class NamesListTransferablePolicy extends FileTransferablePolicy { protected void loadListFiles(List files, List values) throws FileNotFoundException { for (File file : files) { // don't use new Scanner(File) because of BUG 6368019 (http://bugs.sun.com/view_bug.do?bug_id=6368019) - Scanner scanner = new Scanner(new FileInputStream(file), "UTF-8").useDelimiter(LINE_SEPARATOR); + Scanner scanner = new Scanner(new FileInputStream(file), "UTF-8"); - while (scanner.hasNext()) { - String line = scanner.next(); + while (scanner.hasNextLine()) { + String line = scanner.nextLine(); if (line.trim().length() > 0) { values.add(line); diff --git a/source/net/sourceforge/filebot/ui/transfer/FileTransferablePolicy.java b/source/net/sourceforge/filebot/ui/transfer/FileTransferablePolicy.java index f4d7dd88..032b75b8 100644 --- a/source/net/sourceforge/filebot/ui/transfer/FileTransferablePolicy.java +++ b/source/net/sourceforge/filebot/ui/transfer/FileTransferablePolicy.java @@ -14,17 +14,10 @@ import java.util.List; import java.util.Scanner; import java.util.logging.Level; import java.util.logging.Logger; -import java.util.regex.Pattern; public abstract class FileTransferablePolicy extends TransferablePolicy { - /** - * Pattern that will match Windows (\r\n), Unix (\n) and Mac (\r) line separators. - */ - public static final Pattern LINE_SEPARATOR = Pattern.compile("\r\n|[\r\n]"); - - @Override public boolean accept(Transferable tr) throws Exception { List files = getFilesFromTransferable(tr); @@ -43,14 +36,14 @@ public abstract class FileTransferablePolicy extends TransferablePolicy { return (List) tr.getTransferData(DataFlavor.javaFileListFlavor); } else if (tr.isDataFlavorSupported(FileTransferable.uriListFlavor)) { // file URI list flavor - String transferData = (String) tr.getTransferData(FileTransferable.uriListFlavor); + Readable transferData = (Readable) tr.getTransferData(FileTransferable.uriListFlavor); - Scanner scanner = new Scanner(transferData).useDelimiter(LINE_SEPARATOR); + Scanner scanner = new Scanner(transferData); List files = new ArrayList(); - while (scanner.hasNext()) { - String uri = scanner.next(); + while (scanner.hasNextLine()) { + String uri = scanner.nextLine(); if (uri.startsWith("#")) { // the line is a comment (as per RFC 2483)