Estou querendo começar um programa(sou leigo) que lê as informações de um arquivo, por exemplo, se eu escrever no bloco de notas “olá mundo” e salvar na minha área de trabalho.
Quero poder apertar com o botão direito neste arquivo, ir em abrir com, e selecionar o meu programa, onde o meu programa irá abrir uma janela me mostrando o conteúdo do arquivo, neste exemplo “olá mundo”.
Como posso começar ? O que ele precisará ter para funcionar ?
Boa noite, 
Para ler você fará o seguinte, vou dar um exemplo de como ler informações de um arquivo aqui:
public static void main(String[] args) {
try {
FileReader txt = new FileReader("arquivo.txt"); //NOME DO ARQUIVO PARA LEITURA
Scanner scan = new Scanner(txt); //O SCANNER IRÁ FAZER UMA VARREDURA NO ARQUIVO
//O MÉTODO hasNextLine() SÓ PARA QUANDO CHEGA NA ULTIMA LINHA
//NO CASO ELE LERÁ TODO O ARQUIVO E IRÁ IMPRIMIR NA TELA
while (scan.hasNextLine()) {
System.out.println(scan.nextLine());
}
} catch (FileNotFoundException e) {
System.out.println("ARQUIVO NÃO ENCONTRADO"); //CASO NÃO ENCONTRE OU O NOME DO ARQUIVO ESTEJA INCORRETO, APARECERÁ ESSA MENSAGEM
}
}
Boa noite.
Perdão, meu português não é muito bom.
Eu acho que este é um exemplo simples do que vc precisa.
public void inicio() {
JFrame janela01 = new JFrame("Titulo 1");
JButton btnOpen = new JButton("Abrir");
janela01.add(btnOpen);
janela01.pack();
btnOpen.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
try {
JFileChooser fileChooser = new JFileChooser();
int result = fileChooser.showOpenDialog(janela01);
if (result == JFileChooser.APPROVE_OPTION) {
showJanela02(fileChooser.getSelectedFile(), janela01);
}
} catch (Exception ex) {
ex.printStackTrace();
}
}
});
janela01.setVisible(true);
}
public void showJanela02(File file, JFrame pai) throws FileNotFoundException, IOException {
JDialog janela02 = new JDialog(pai, "Titulo 2");
JTextArea jtxtA = new JTextArea();
BufferedReader input = new BufferedReader(new InputStreamReader(
new FileInputStream(file)));
jtxtA.read(input, "READING FILE :-)");
janela02.add(jtxtA);
janela02.pack();
janela02.setModal(true);
janela02.setVisible(true);
}
Saudações da Argentina

Programas Java (.class e/ou .jar) não são nativos do sistema operacional, eles são nativos da máquina virtual Java.
Para que seu programa apareça na lista de programas válidos para o menu “Abrir com” do Windows, ele precisa ser um programa nativo (.exe) ou um arquivo de lote (.bat).
Isso significa que você pode criar um .bat para executar o Java passando sua classe ou .jar como parâmetro e depois selecionar esse .bat no menu “Abrir com” do Windows.

Para o seu programa receber o arquivo selecionado com a opção “abrir com”, você vai precisar tratar os argumentos recebidos no método main de sua aplicação.
1 - Vamos criar um programa Java que recebe o caminho de um arquivo no método main e apresenta o conteúdo dele em um JFrame.
package examples;
import java.awt.BorderLayout;
import java.awt.Dimension;
import java.io.File;
import java.io.IOException;
import java.nio.file.Files;
import java.util.List;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.UIManager;
public class AbridorDeArquivo {
public static void main(String[] args) {
try {
if (args != null && args.length == 1) {
AbridorDeArquivo abridor = new AbridorDeArquivo();
abridor.abrir(args[0]);
}
} catch (IOException e) {
e.printStackTrace();
}
}
public void abrir(String caminho) throws IOException {
File arquivo = new File(caminho);
List<String> conteudo = Files.readAllLines(arquivo.toPath());
exibir(conteudo);
}
private void exibir(List<String> conteudo) {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
JFrame frame = new JFrame("Meu visualizador");
frame.setMinimumSize(new Dimension(640, 480));
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JTextArea textArea = new JTextArea();
textArea.setEditable(false);
for (String linha : conteudo) {
textArea.append(linha);
textArea.append("\n");
}
frame.add(new JScrollPane(textArea), BorderLayout.CENTER);
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
}
2 - Compile este arquivo e gere um arquivo .jar executável.
3 - Crie um arquivo .bat para executar o seu arquivo .jar, abaixo está o conteúdo desse arquivo .bat:
@ECHO OFF
REM acessar o diretório do próprio .bat
cd /d %~dp0
REM executar o 'meu.jar' através do Java e passar o arquivo selecionado como parâmetro
start javaw -jar .\meu.jar %1
4 - Criar um arquivo qualquer (Eu salvei como meu-arquivo.meu) com o seguinte conteúdo:
Olá mundo!
5 - Clicar com o botão direito em cima do arquivo salvo e selecionar “Abrir com”:

6 - Selecione a opção “Procurar outro arquivo neste PC”:
7 - Acesse a pasta onde se encontra o ser arquivo .jar e o seu arquivo .bat (ambos devem estar numa mesma pasta) e selecione o seu arquivo .bat e clique em “Abrir”:

8 - Se tudo correu bem, seu programa será executado e vai apresentar o conteúdo do arquivo selecionado:

