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
541
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
- 2024168
SDP haluaa 40 000 nettomaahanmuuttajaa
SDP:n Suunnanmuutos-vaihtoehtobudjetissa, käy ilmi, että demarit itse asiassa vaativat räjähdysmäistä ”työperäisen” maah1453756Orpo: Velkajarrua vastustavaa puoluetta vaikea ajatella hallitukseen
No Minja Koskelan kommunistipuolue jäi ulos tuosta. Kaikki eduskuntapuolueet vasemmistoliittoa lukuun ottamatta sopivat703087Hienoa! Eduskunta luopui käteisen käytöstä
Nyt tuo sama muutos pitää saada myös muuhun yhteiskuntaan. Käteistähän ei tarvitse tänä päivänä enää kuin rikolliset.431559Orpo loukkaantui fasismiin viittaavasta sanavalinnasta
Mutta miksi loukkaantui? Orpohan on tehnyt yhteistyötä fasistien kanssa jo vuonna 2019, siis jo neljä vuotta ennen loukk271331Ikävä sinua mies
Vuosia kuluu, mutta tunteet ei ole hävinnyt. Tasoittuneet toki, kun ei olla nähty. Järki palannut päähän kuitenkin. Se i191328Mikä tämä henkilö mahtaa touhuta Parkanossa
Kamalaa https://www.ylasatakunta.fi/teksti/pirkanmaan-karajaoikeus-vangitsi-koiran-tappamisesta-epaillyn-6.68.127794.b58321307Sulla on avaimet ja keinot
Jos haluat jatkaa tutustumista. Itse olen niin jäässä etten pysty tekemään enää mitään. Pidempi keppi johon on helpompi211301Kiinnostaa - ei kiinnosta - kiinnostaapas
Selittäkää hämmentyneelle miksi miehiä ei ikinä kiinnosta silloin, kun sitä olisi itsekin kiinnostunut? Sitten kun siirt1151098Martina haluaa Marbellaan
Martinan tekisi mieli ottaa lennot Marbellaan, jossa näkisisi kauniita ja hyväntuulisia ihmisiä. No sitten pitää matkust2151033