Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze: .bat program pro Java aplikaci

Aktivity
Avatar
sisolpes
Člen
Avatar
sisolpes:14.6.2014 12:29

Zdravím.
Předem říkám, že vytvořit .bat soubor a zapsat do něho umím.
Jenže - jelikož (toto usuzuji podle mého "profesionálního" výzkumu) Java zřejmě používa jinou znakovou sadu než cmd (příkazový řádek Windows), vyběhnout mě znaky ze staré Aztécké říše.
Příkaz chcp [znaková sada] jsem zkoušel, nepomohlo.
Zná někdo odpověď?
Předem děkuji za vaše snažení.

Odpovědět
14.6.2014 12:29
Alt + 2
Avatar
krabatom
Člen
Avatar
Odpovídá na sisolpes
krabatom:15.6.2014 15:43

Moc jsem nepochopil, o co se snažíš. Vygenerovat *.bat soubor v Javě? Ideální by byl nějaký zdrojový kód, pak se snáze radí.

 
Nahoru Odpovědět
15.6.2014 15:43
Avatar
sisolpes
Člen
Avatar
Odpovídá na krabatom
sisolpes:15.6.2014 16:41

Ke zdrojovému kódu se zrovna nemohu dostat, ale vypadá nějak takto:

soubor.vytvoř("změnaJazyku.bat",System.getenv("temp"), chyba+"vytvoření .bat souboru."+konecchyby);
soubor.zapiš(xcopy \"Panřídící.java"\ "+tempsoubor, "změnaJazyku.bat" , chyba+"zkopírování souboru do Temp adresáře+"konecchyby);

Vysvětlení: Potřebuji zkopírovat mou hlavní třídu do dočasných souboru. Použiji .bat program, protože nemohu zkopírovat soubor, který se nyní používá.

Editováno 15.6.2014 16:42
Nahoru Odpovědět
15.6.2014 16:41
Alt + 2
Avatar
krabatom
Člen
Avatar
Odpovídá na sisolpes
krabatom:15.6.2014 17:35

Pořád moc nechápu o co se snažíš, ale přijde mi to celé jako divné řešení. Ty máš nějakou svojí třídu, chceš si ji uložit do textového souboru a chceš to dělat přes *.bat, které si vygeneruješ a pak to spustíš?

Možná by stačilo jen použít v Javě Files.copy(sou­rce.toPath(), dest.toPath()), ale nevim, co je cílem.

 
Nahoru Odpovědět
15.6.2014 17:35
Avatar
sisolpes
Člen
Avatar
Odpovídá na krabatom
sisolpes:15.6.2014 21:39

Řeknu ti to takto:
Chtěl jsem dvoujazyčnou aplikaci a jelikož mě nešel kopírovat Panřídící.java (hlavní třída) kvůli tomu, že se stále používá, tak jsem se rozhodl vytvořit pomocí kódů, které vidíš nad tvojím příspěvkem .bat aplikaci, která by kopírovala soubor Panřídící.java do dočasných souborů, kde by se změnil obsah onoho souboru a zkopíroval zpět (Rekordně dlouhá věta).

Ale toto není podstatné (vyřešil jsem to pomocí neurčitého ArrayListu, do kterého se naplní buď české, nebo anglické texty).

Ale abychom neodbočily od původního tématu tohoto dotazu.
Chci spustit aplikaci (pomocí java -jar [jméno hl. třídy], ale v cmd se mi nezobrazují české znaky.

Editováno 15.6.2014 21:39
Nahoru Odpovědět
15.6.2014 21:39
Alt + 2
Avatar
krabatom
Člen
Avatar
Odpovídá na sisolpes
krabatom:15.6.2014 23:26

Zkus předtím, než budeš tisknout nějaký text dát do kódu v Javě:

System.setOut(new PrintStream(System.out, true, "Cp852"));
  • ošetřit výjimku
Editováno 15.6.2014 23:27
 
Nahoru Odpovědět
15.6.2014 23:26
Avatar
sisolpes
Člen
Avatar
Odpovídá na krabatom
sisolpes:16.6.2014 15:01

Až se dostanu k Eclipse, rozhodně zkusím.
Díky.

Nahoru Odpovědět
16.6.2014 15:01
Alt + 2
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 7 zpráv z 7.