Stack Overflow на русском Asked by Agzam4 on February 20, 2021
Что бы вопрос был понятнее, приведу аналогию:
Когда тыкаешь по txt файлу открывается блокнот с содержимым файла, если конечно не другое приложение стоит, а я как раз вместо блокнота хочу подставить свою скомпилированную* программу
*Лучше конечно с jar, но можно и с exe
Цель такова:
Сделать так, что бы при нажатии по файлу с определенным расширением (например txt), открывался JFrame с текстом из этого файла (по которому кликнули)
Создавать JFrame и читать файли по Path, я умею, но как узнать path этого файла?
Если вообще нет вариантов, то можно вот есть с bat файлом (Спасибо Akina):
Создаём где-нибудь файл, называем его myfile.myext
.
Создаём где-нибудь bat-файл, называем его mybatch.bat
.
Редактируем bat-файл, пишем в него:
start javaw -jar Java_Program.jar %1
ПКМ по файлу >> Открыть с помощью >> Другие приложения >> bat-файл с программой
Path будет поступать в String[]
у метода main
Пример кода для проверки:
public static void main(String[] args) {
for (String string : args) {
JOptionPane.showMessageDialog(null, string);
}
JOptionPane.showMessageDialog(null, "End");
}
По шагам.
myfile.myext
.mybatch.bat
.@echo Batch-file name: %0
@echo Filename: %1
pause
Для справки - в реестре создаются два раздела: HKCR.myext
и HKCRmyext_auto_file
. Можете их изучить... и потом удалить - за явной ненадобностью.
Correct answer by Akina on February 20, 2021
Get help from others!
Recent Answers
Recent Questions
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP