ConvertToURL in Java

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

mipa
*
Beiträge: 10
Registriert: So, 21.01.2007 17:54

ConvertToURL in Java

Beitrag 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
hol.sten
******
Beiträge: 871
Registriert: Fr, 18.11.2005 21:21

Re: ConvertToURL in Java

Beitrag 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
mipa
*
Beiträge: 10
Registriert: So, 21.01.2007 17:54

Re: ConvertToURL in Java

Beitrag 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
hol.sten
******
Beiträge: 871
Registriert: Fr, 18.11.2005 21:21

Re: ConvertToURL in Java

Beitrag 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
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Beitrag 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
hol.sten
******
Beiträge: 871
Registriert: Fr, 18.11.2005 21:21

Beitrag 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
Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Beitrag 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
Antworten