Index: freemind/modes/MapAdapter.java =================================================================== --- freemind/modes/MapAdapter.java (revision 13127) +++ freemind/modes/MapAdapter.java (working copy) @@ -190,7 +190,7 @@ * Return URL of the map (whether as local file or a web location) */ public URL getURL() throws MalformedURLException { - return getFile() != null ? getFile().toURI().toURL() : null; + return getFile() != null ? new URL(getFile().toURI().toString().replaceAll("%20", " ")) : null; } Index: freemind/modes/mindmapmode/MindMapMapModel.java =================================================================== --- freemind/modes/mindmapmode/MindMapMapModel.java (revision 13127) +++ freemind/modes/mindmapmode/MindMapMapModel.java (working copy) @@ -316,7 +316,7 @@ public void load(URL url) throws FileNotFoundException, IOException, XMLParseException, URISyntaxException { logger.info("Loading file: " + url.toString()); - File file = new File(new URI (url.toString())); + File file = new File(new URI(url.toString().replaceAll(" ", "%20"))); if (!file.exists()) { throw new FileNotFoundException(Tools.expandPlaceholders(getText("file_not_found"), file.getPath())); } if (!file.canWrite()) { Index: freemind/modes/NodeAdapter.java =================================================================== --- freemind/modes/NodeAdapter.java (revision 13107) +++ freemind/modes/NodeAdapter.java (working copy) @@ -26,6 +26,7 @@ import java.io.StringReader; import java.io.StringWriter; import java.io.Writer; +import java.net.URLDecoder; import java.util.Collection; import java.util.Collections; import java.util.Enumeration; @@ -1052,7 +1053,7 @@ } //link if (getLink() != null) { - node.setAttribute("LINK", getLink()); } + node.setAttribute("LINK", URLDecoder.decode(getLink(),"UTF-8")); } //history information, fc, 11.4.2005