Hirdetés
- Gyorsuló Arc meghajtót prezentált az Intel
- Feje tetejére állt a felskálázóverseny a Resident Evil Requiemben
- Új gigakonzorcium erősítené meg az ARM szoftveres hátterét
- Gyárátalakításokkal kaszálna nagyott a memóriapánikból a Samsung
- Szendvics a csúcson: teszten a különleges ROG Swift PG27AQWP monitor
Új hozzászólás Aktív témák
-
válasz
#68216320
#10800
üzenetére
Az exe futtatása megoldható a
Runtime.getRuntime().exec(...)hívással. Visszakapsz egy processz-t, aminek a lefutásátwaitFor()-ral megvárod. Itt van rá egy kis példa program, ami már demonstrálja azt is, hogy hogyan lehet az exe outputját (stdout) megszerezni. (Alternatíva, hogy az exe egy fájlba írja az outputját, amit futás után normál módon fájlként felolvasol.)A parsolásra régebben még azt mondtam volna, hogy kell írni egy parsert, de manapság ez nem divat... Ha tényleg ennyire rögzített a szerkezet, akkor a sorban szereplő négy komponens (csoport, adatnév, értéknév, érték) előbányászható egy reguláris kifejezéssel is, pl. ezzel:
^([^.]+)\.([^.]+)\.([^.]+): *(.*?) *$Az outputot soronként célszerű feldolgozni, az elején vagy ki kell hagyni fix számú sort, vagy egyszerűen ki kell hagyni azokat, amire nem illeszkedik a regex:
Pattern pattern = Pattern.compile(<a fenti regex>);
while (<van sor>) {
Matcher m = pattern.matcher(<a sor tartalma>);
if (m.find()) {
String sensorGroup = m.group(1);
// ...
String sensorValue = m.group(4);
// DB mentés
}
}Alternatív szervezés: linux-ban oldod meg, amit lehet. A java program nem hajt végre exec-et, helyette a standard input-ot olvassa, és dolgozza fel. Hívni meg valahogy így:
>sensor.exe <opciók> | java -jar sensorprocessor.jarÉs az egészet lehet futtatni pl. cron-ból. (Hátránya, hogy a JVM indítás kissé erőforrásigényes, 30 másodpercenként meg pláne.)
Megjegyzések: (1) fejből írtam, a kódot tekintsük pszeudokódnak, (2) a regex pattern-ben a
\-eket duplikálni kell a Java string konstansban.Szerk: A korábbi válaszokat nem láttam, pár dolog így ismétlés, bocs.
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Milyen Android TV boxot vegyek?
- World of Tanks - MMO
- Apple iPhone 17 Pro Max – fennsík
- LEGO klub
- Megérkezett a Huawei eddigi legkomolyabb futóórája
- Utcakép banánnal: félrecsúszhat a Google Térkép fókusza
- Mesterséges intelligencia topik
- Lenovo Legion és IdeaPad Y széria
- Itt a Galaxy S26 széria: az Ultra fejlődött, a másik kettő alig
- Nyíregyháza és környéke adok-veszek-beszélgetek
- További aktív témák...
- 227 - Lenovo LOQ (15IRX10) - Intel Core i7-13650HX, RTX 5060
- ÁRGARANCIA!Épített KomPhone Ryzen 5 4500 16/32/64GB RAM RTX 3050 6GB GAMER PC termékbeszámítással
- ÚJ Lenovo ThinkPad T16 Gen 4 - 16" WUXGA - Ultra 7 255U - 32GB - 1TB SSD - Win11 - 3 év garancia
- Tablet felvásárlás!! Apple iPad, iPad Mini, iPad Air, iPad Pro
- HP EliteDesk 800 G2 (Tower) i5-6500,8GB DDR4,240GB SSD, DVD, WIN11
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

