Moi!
Minulla on siis java-ohjelma, josta haluaisin saada open officen käyntiin ja mieluiten vielä niin, että uuden dokumentin alkuun tulisi tietty ohjelman määräämä teksti. Onko mitään keinoa?
Kiitos avusta!
Javalla open office käyntiin
3
530
Vastaukset
- keksa1
voisit kaynnistaa openoffice.exen vaikka javan system tai exec-komennoilla.
sitten tarkistat openoffice.exen voiko sille antaa parametreja esim.
openoffice.exe tiedosto.doc "Terve kaikki!"- Foobarfoo
Oli sevverran mielenkiintoinen kysymys et oli pakko kokeilla ja tehdä oma esimerkkiohjelma (joka löytyy seuraavasta viestistä). Joudut melko varmasti muokkaan ohjelmaan mut toivottavasti pääset edes alkuun. Seuraavat jarrit tarvitaan: ridl.jar, unoloader.jar, jurt.jar, juh.jar, unoil.jar ja bootstrapconnector.jar
- foobarfoo
Foobarfoo kirjoitti:
Oli sevverran mielenkiintoinen kysymys et oli pakko kokeilla ja tehdä oma esimerkkiohjelma (joka löytyy seuraavasta viestistä). Joudut melko varmasti muokkaan ohjelmaan mut toivottavasti pääset edes alkuun. Seuraavat jarrit tarvitaan: ridl.jar, unoloader.jar, jurt.jar, juh.jar, unoil.jar ja bootstrapconnector.jar
import ooo.connector.BootstrapSocketConnector;
import com.sun.star.beans.PropertyValue;
import com.sun.star.comp.helper.BootstrapException;
import com.sun.star.text.XText;
import com.sun.star.text.XTextDocument;
import com.sun.star.uno.UnoRuntime;
import com.sun.star.uno.XComponentContext;
import com.sun.star.util.XCloseable;
import com.sun.star.lang.XComponent;
import com.sun.star.lang.XMultiComponentFactory;
import com.sun.star.frame.XComponentLoader;
import com.sun.star.frame.XStorable;
public class OOTest {
public static void main(String[] args) {
try {
// Luodaan yhteys sofficeen
String sofficeLocation = "/usr/lib/openoffice/program/";
XComponentContext xcontext = BootstrapSocketConnector.bootstrap(sofficeLocation);
XMultiComponentFactory xMCF = xcontext.getServiceManager();
Object oDesktop = xMCF.createInstanceWithContext(
"com.sun.star.frame.Desktop", xcontext);
XComponentLoader xComponentLoader = (XComponentLoader) UnoRuntime
.queryInterface(com.sun.star.frame.XComponentLoader.class,
oDesktop);
// Tiedoston luonti
XComponent document = xComponentLoader.loadComponentFromURL("private:factory/swriter",
"_blank", 0, new PropertyValue[0]);
XTextDocument textDocument = (XTextDocument) UnoRuntime
.queryInterface(com.sun.star.text.XTextDocument.class,
document);
XText teksti = textDocument.getText();
// Lisataan tekstia
teksti.insertString(teksti.getEnd(), "TERVE MAAILMA!!1", false);
//Tallennetaan
XStorable xStorable = (XStorable) UnoRuntime.queryInterface(
XStorable.class, document);
PropertyValue[] storeProps = new PropertyValue[0];
xStorable.storeAsURL("file:///tmp/java_testi.odt", storeProps);
//Suljetaan
XCloseable xcloseable = (XCloseable) UnoRuntime.queryInterface(
XCloseable.class, document);
xcloseable.close(false);
} catch (BootstrapException e) {
e.printStackTrace();
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Poliisi: Kymmenhenkinen pohjalaisperhe ollut vuoden kateissa kansainvälinen etsintäkuulutus Poliis
Poliisi: Kymmenhenkinen pohjalaisperhe ollut vuoden kateissa – kansainvälinen etsintäkuulutus Poliisi pyytää yleisön apu2702282En kadu sitä, että kohtasin hänet
mutta kadun sitä, että aloin kirjoittamaan tänne palstalle. Jollain tasolla se saa vain asiat enemmän solmuun ja tekee n831001Oisko mitenkään mahdollisesti ihan pikkuisen ikävä..
...edes ihan pikkuisen pikkuisen ikävä sulla mua??.. Että miettisit vaikka vähän missähän se nyt on ja oiskohan hauska n55979- 108960
Noniin rakas
Annetaanko pikkuhiljaa jo olla, niin ehkä säilyy vienot hymyt kohdatessa. En edelleenkään halua sulle tai kenellekään mi81921- 42854
Au pair -työ Thaimaassa herättää kiivasta keskustelua somessa: "4cm torakoita, huumeita, tauteja..."
Au pairit -sarjan uusi kausi herättää keskustelua Suomi24 Keskustelupalvelussa. Mielipiteitä ladataan puolesta ja vastaa21838Helena Koivu : Ja kohta mennään taas
Kohta kohtalon päivä lähestyy kuinka käy Helena Koivulle ? Kenen puolella olet? Jos vastauksesi on Helenan niin voisi67736Tässä totuus jälleensyntymisestä - voit yllättyä
Jumalasta syntyminen Raamatussa ei tässä Joh. 3:3. ole alkukielen mukaan ollenkaan sanaa uudestisyntyminen, vaan pelkä299684- 33677