Как открывать файл в уже запущенной программе?

Простой код, запускает текстовый файл по месту его расположения. Файл открывается программой в виндовс по умолчанию (которая выбрана для открытия файлов данного типа/расширения). Вопрос, как сделать так, чтобы второй и все последующие файл/ы открывались в уже запущенной программе (в данном примере это блокнот), а не запускался новый экземляр блокнота.

import java.awt.Desktop;
import java.io.File;
import java.io.IOException;

public class OpenFile {

    public static void main(String[] args) throws IOException {
        File file = new File("C:/temp/text.txt");
        if (!Desktop.isDesktopSupported()) {
            System.out.println("Desktop is not supported");
            return;
        }
        Desktop desktop = Desktop.getDesktop();
        if (file.exists()) desktop.open(file);

        File file2 = new File("C:/temp/text2.txt");
        if (!Desktop.isDesktopSupported()) {
            System.out.println("Desktop is not supported");
            return;
        }
        Desktop desktop2 = Desktop.getDesktop();
        if (file.exists()) desktop.open(file);
    }
}

Как вы поняли сейчас результатом работы программы у меня будет открыто 2 блокнота. А мне нужно один. Мне важно понять именно способ. Блокнот я просто выбрал для примера.


Ответы (1 шт):

Автор решения: talex

То что вы хотите сделать невозможно.

Ближайшее что можно сделать это закрыть предыдущую копию программы.

→ Ссылка