Seite 1 von 1
ConvertToURL in Java
Verfasst: So, 21.01.2007 18:14
von mipa
Hallo,
ich möchte mit Java ein Dokument mit "loadComponentFromURL" öffnen. Die URL muss dabei in der Form "File:///C:/temp/test.odt" sein.
Um diese Schreibweise zu erhalten benutzt man in Basic "convertToURL", aber wie kann ich in Java auf diese Methode zugreifen??? Leider sind bisher alle gefundenen Beispiele in Basic...
Danke für Eure Hilfe, Grüsse
Michaela
Re: ConvertToURL in Java
Verfasst: So, 21.01.2007 18:36
von hol.sten
mipa hat geschrieben:ich möchte mit Java ein Dokument mit "loadComponentFromURL" öffnen. Die URL muss dabei in der Form "File:///C:/temp/test.odt" sein.
Um diese Schreibweise zu erhalten benutzt man in Basic "convertToURL", aber wie kann ich in Java auf diese Methode zugreifen??? Leider sind bisher alle gefundenen Beispiele in Basic...
Wie wäre es mit einem Java-Vierzeiler?
Code: Alles auswählen
// den Dateinamen für eine gültige (uno)URL aufbereiten
java.io.File sourceFile = new java.io.File(datei);
loadUrlSB = new StringBuffer("file:///");
loadUrlSB.append(sourceFile.getCanonicalPath().replace('\\', '/'));
loadUrl = loadUrlSB.toString();
Habe ich hier gefunden:
viewtopic.php?t=6861&highlight=loadcomp ... omurl+java
Regards
hol.sten
Re: ConvertToURL in Java
Verfasst: Mo, 22.01.2007 07:51
von mipa
Hallo hol.sten,
danke für Deine Hilfe!
Ich hatte gehofft, dass es eine elegantere Methode gibt, bei der "File:///" nicht festverdrahtet wird und somit auf jedem System die richtige URL ermittelt wird.
Gruß, Michaela
Re: ConvertToURL in Java
Verfasst: Mo, 22.01.2007 18:37
von hol.sten
mipa hat geschrieben:Ich hatte gehofft, dass es eine elegantere Methode gibt,
Na ja, elegant ist es nicht, aber es tut seinen Dienst.
mipa hat geschrieben:bei der "File:///" nicht festverdrahtet wird und somit auf jedem System die richtige URL ermittelt wird.
Auf welchem System hast du damit Probleme? Mit der oben geposteten Methode läuft das ganze auf Windows, verschiedenen getesteten Linuxen und Solaris.
Regards
hol.sten
Verfasst: Mo, 22.01.2007 19:16
von Stephan
bei der "File:///" nicht festverdrahtet wird und somit auf jedem System die richtige URL ermittelt wird.
Genau damit es auf jedem System funktioniert, wird die Notation mit File verwendet, diese ist nämlich systemunabhängig, solange Du unter OOo arbeitest.
Im Developersguide finde ich im Übrigen auch ein Java-Beispiel, das mir geeignet scheint:
Code: Alles auswählen
// loading a blank spreadsheet document gives us its XComponent interface:
XComponent xComponent = xComponentLoader.loadComponentFromURL(
"private:factory/scalc", "_blank", 0, loadProps);
// now we query the interface XSpreadsheetDocument from xComponent
XSpreadsheetDocument xSpreadsheetDocument = (XSpreadsheetDocument)UnoRuntime.queryInterface(
XSpreadsheetDocument.class, xComponent)
(Sorry, ich weiß das nicht sicher, da ich kein Java kann)
Aber der bereits gepostete Code dürfte nicht schlechter sein, jedenfalls nicht wegen des File
Gruß
Stephan
Verfasst: Mo, 22.01.2007 19:29
von hol.sten
Stephan hat geschrieben:Im Developersguide finde ich im Übrigen auch ein Java-Beispiel, das mir geeignet scheint:
Code: Alles auswählen
// loading a blank spreadsheet document gives us its XComponent interface:
XComponent xComponent = xComponentLoader.loadComponentFromURL(
"private:factory/scalc", "_blank", 0, loadProps);
// now we query the interface XSpreadsheetDocument from xComponent
XSpreadsheetDocument xSpreadsheetDocument = (XSpreadsheetDocument)UnoRuntime.queryInterface(
XSpreadsheetDocument.class, xComponent)
(Sorry, ich weiß das nicht sicher, da ich kein Java kann)
Der Code ist sicher nicht schlecht. Nur passt er nicht zum Thema
Gesucht wurde Java-Code zum Laden eines Dokuments. Der Code den du aus dem wirklich brillianten OOo Developer's Guide geposted hast erzeugt ein leeres Spreadsheet.
Regards
hol.sten
Verfasst: Mo, 22.01.2007 21:11
von Stephan
Ja, stimmt.
Ich bekenne mich nur einmal durch denThread gescrollt zu sein und geantwortet zu haben ohne richtig zu lesen - sollte man nicht tun.
Gruß
Stephan