Deci codul sunt de funcționare este după cum urmează:
import java.awt.*;
import java.io.File;
import java.io.IOException;
public class Main
{
public static void main(String[] args)
{
new Thread(()->{
try
{
Desktop.getDesktop().open(new File(Main.class.getResource("/blank.jpg").getPath()));
} catch (IOException e)
{
System.out.println("oopse");
}
}).start();
}
}
de fiecare dată când se solicită Desktop.getDesktop().open(Fișier nou(filePath)); și filepath se termină în .jpg, pentru un motiv oarecare fișierul este deschis în firefox în loc de Gwenview.
Vreau această aplicație pentru a fi cross-platform, și deschiderea de fișiere este o mare parte din cererea mea. Am nevoie de ea să respecte preferințele de utilizator implicit pentru deschiderea programelor. Cum am codul de acest lucru pentru ca este prietenos pentru Windows, OsX, și Ubuntu atât gnome si plasma?
Aici este un complet runnable exemplu: https://github.com/CodingSorcerer/Desktop-Open-Test