Ahoj, hledám již několik dní a stále se nemůžu dopátrat. Potřebuji zjistit celkový čas od zapnutí počítače v Javě. Třída System nabízí pouze currentTimeMillis(), který zjišťuje aktuální čas. Poraďte prosím jak na to. Díkes
Fórum › Java
Čas
To asi samotnout Javou nezjistis (aspon si to myslim). Na kadej OS budes asi muset vytvorit prislusnej skriptik, ktery vypocita boot time z "Uptime" (http://en.wikipedia.org/wiki/Uptime) a zapise ho napr do nejakeho sopuboru, ktery pak Javou prectes.
EDIT: Spatne sem si to precet.. myslel jsem ze potrebujes znat boot time a ne uptime. Nicmene sem nenasel jak zjistit primo z Javy uptime nebo cas posledniho startu (...pres System.getProperty(“xxxxx”)). Ale z Javy dokazes spustit unix shell a win promt (spustit prislusny prikaz ktery je v tom odkazu na wiki). Jine lepsi reseni me nenapada (i kdyz v linuxu vlastne asi pujde v jave primo precist /proc/uptime)
To D-Fox : opravdu jsem myslel upTime. Nicméně jsem našel (myslím) jakým způsobem vložit do příkazové řádky příkaz z Javy, ale už nějak nemůžu přijít na to jak to přečíst. Možná že je to ale dělám blbě.
Takhle to posílám do příkazového řádku, ale jak z něj přečíst výstup?
String command = "systeminfo | find \"Doba\"";
Runtime runtime = Runtime.getRuntime();
Process process = null;
try {
process = runtime.exec(command);
} catch (IOException ex) {
System.out.println("chyba");
}
Podle dokumentace precist pres getInputStream http://download.oracle.com/javase/1.4.2/docs/api/java/lang/Process.html#getInputStream(),
kdyby byl stream prazdny, tak jeste zkus precist getErrorStream, at vidis jestli si prikaz zadal spravne.
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Čas v title — založil Frozen
Ubehnuty cas — založil dalaman
Čas a TK inter — založil Arthas
Moderátoři diskuze