Jak sprawić by po kliknięciu na plik *.txt otworzył się mój jar ?
Plk można ustawić jako domyślny w systemie ale jak się dostać do jego treści. Wiem żę to coś ze String[] args sle co dokładnie?
Zresztą po skojarzeniu windows mówi "Ta aplikacja nie będzie działać ma twoim komputerze". Co robić?
o.O dlaczego chcesz otwierać plik .txt w maszynie Javy ?
"String[] args" chyba chodzi Ci o wysłanie parametrów wejściowych (?).
a może sobie napisał edytor tekstu i chce go skojarzyć z txt? kto to wie ?
Tylko zmiany w rejsetrze ale szczerze nigdy nie próbowałem kojarzyć niczego z plikiem jar. ewentualnie opakowalem w exec-a i wtedy robiłem skojarzenie
Chodzi mi np. o zrobienie edytora tekstu , a każdy edytor, tekstu powinien móc otwierać pliki po kliknięciu na nie. Tak chodzi mi o parametry wejściowe.
Np. w grze minecraft był parametr username (więc to musi być moźliwe). Jak nazwać parametry i powiedzieć ile ma ich być oraz który parametr to ścieżka do pliku którego ktoś chce otworzyć w moim programie czy coś takiego ?
A wiesz co to jest String[] args ?
Skompiluj ten kod i uruchom go z parametrami (obojętnie z iloma):
class test {
public static void main(String[] args) {
for (String result : args)
System.out.println(result);
}
}
Potem ten (wprowadź jeden parametr):
class test {
public static void main(String[] args) {
System.out.println(args[0]);
}
}
A na koniec ten (uruchom z dwoma parametrami):
class test {
public static void main(String[] args) {
System.out.println(args[0]);
System.out.println(args[1]);
}
}
Już rozumiesz ?
A jak chcesz uruchomić plik .txt w Javie to raczej błędne koło.
Maszyna odpali Ci .txt i będzie oczekiwać, że to jakiś skompilowany program.
Musisz sobie zrobić .exe, który uruchomi Twój .jar z parametrem do pliku.
http://launch4j.sourceforge.net/ tu możesz zrobić sobie launchera
potem w HKEY_CURRENT_USER\Software\Classes (alias HKEY_CLASSES_ROOT) robisz skojarzenie ze swoim plikiem (podejrzyj jak są zrobione inne i wszystko będzie jasne) lub po prostu z eksploratora albo generatora instalek
ścieżka do pliku przyjdzie w parametrze, parametrów będzie tyle ile plików na raz spróbujesz otworzyć - przeciągając 5 plików na swój program otrzymasz 5 parametrów (ale zazwyczaj ludzie otwierają jeden plik na raz więc parametr też będzie jeden)
Czyli args[0] to plik do otwarcia a z jara nie otworze pliku tylko muszę przez exe ?
Ale ten exe to ma być mój skompilowany jar na exe czy muszę korzystać z innych języków ?
txt pod jara nie podepniesz, to tak jabyś próbwał txt pod zip-a podpiąć. args[0] to raczej nazwa pliku niż sam plik . Musisz raczej korzystać z innych języków ale jak ktoś wyżej napisał jest coś takiego jak launch4j który ci eleganco tworzy exe-ca.
Nie rozumiem. Zawsze myślałem że jar to plik otwierany i czytany za pomocą Javy to skoro Java go otwiera to może mi przekazać nazwę pliku.
Jeśli tak to użyje C++ albo VB.
Nie rozumiem też jak działa ten launch4j. Czy on poda mi tą nazwę pliku jako
pierwszy argument ?
Boi jak on jest zrobiony ? To wszystko będzie w launch4j zapakowane czy mi tego jara jakoś wygeneruje na dysku ?
Mały przerywnik-skojarzenie:
:)
wojciechmaciejewski napisał(a):
txt pod jara nie podepniesz, to tak jabyś próbwał txt pod zip-a podpiąć. args[0] to raczej nazwa pliku niż sam plik . Musisz raczej korzystać z innych języków ale jak ktoś wyżej napisał jest coś takiego jak launch4j który ci eleganco tworzy exe-ca.
launch4j opakuje Ci tego jara w execa. Później jak skojarzysz plik txt z tym execiem w argumencie przekaże ci nazwe tego pliku i będziesz miał w args nazwę pliku. Tyle
Dzięki bardzo pomogliście. Chyba skorzystam z launch4j. Dzięki za pomoc.