pessoal poderiam me ajudar a passar esse sistema para Joptionpane ja tentei de tudo mas continua dando erro.
public static void main(String[] args) throws IOException {
//Instanciando a classe ArrayList para uso
ArrayList Produto = new ArrayList<>();
//Instanciando a Classe Scanner
Scanner ler = new Scanner(<a href="http://System.in">System.in</a>);
//Opção que será passada pelo usuário na escolha do menu
int menu;
importar(Produto);//importando os dados
do{
menu = Integer.parseInt(JOptionPane.showInputDialog("Digite o valor da opção desejada"
+ "|\n"
+ "|\n"
+ "| OPÇÃO \n"
+ "|-------------------------------------------------------------|\n"
+ "| ( 1 ) CADASTRAR CLIENTE \n"
+ "|-------------------------------------------------------------|\n"
+ "| ( 2 ) CADASTRAR PRODUTO \n"
+ "|-------------------------------------------------------------|\n"
+ "| ( 3 ) PESQUISAR CLIENTE \n"
+ "|-------------------------------------------------------------|\n"
+ "| ( 4 ) PESQUISAR PRODUTO \n"
+ "|-------------------------------------------------------------|\n"
+ "| ( 5 ) EDITAR CLIENTE \n"
+ "|-------------------------------------------------------------|\n"
+ "| ( 6 ) EDITAR PRODUTO \n"
+ "|-------------------------------------------------------------|\n"
+ "| ( 7 ) EXCLUIR CLIENTE \n"
+ "|-------------------------------------------------------------|\n"
+ "| ( 8 ) EXCLUIR PRODUTO \n"
+ "|-------------------------------------------------------------|\n"
+ "| ( 0 ) SAIR 2\n"
+ "|-------------------------------------------------------------|\n"));
switch(menu){
case 1:cadastrar(Produto);
salvar(Produto);
listar(Produto);
break;
case 2:pesquisar(Produto);
listar(Produto);
break;
case 3:excluir(Produto);
salvar(Produto);
break;
case 4:editar(Produto);
listar(Produto);
break;
}
System.out.println("\n");
}while(menu!=0);
salvar(Produto);//Exportando os dados
}
/**Método que irá importar os dados para Lista*/
public static void importar(ArrayList<String>Produto){
try{
FileReader arq = new FileReader("C:\\Users\\toshiba\\Desktop\\Produto.txt");
BufferedReader lerArq = new BufferedReader(arq);
String linha = lerArq.readLine();//lê a primeira linha
// a variável "linha" recebe o valor "null" quando o processo
// de repetição atingir o final do arquivo texto
while(linha!=null){
Produto.add(linha);
linha = lerArq.readLine();// lê da segunda até a última linha
}
arq.close();
}catch(IOException err){
System.err.printf("Erro na leitura do arquivo %s.",err.getMessage());
}
}
/**Método para buscar os dados da lista*/
public static void salvar(ArrayList<String> Produto) {
FileWriter arq = null;
try {
arq = new FileWriter("C:\\Users\\toshiba\\Desktop\\Produto.txt");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
PrintWriter gravarArq = new PrintWriter(arq);
int i;
int n = Produto.size();
for (i = 1; i < n; i++) {
gravarArq.printf(Produto.get(i));
gravarArq.printf("\r\n");
}
gravarArq.close();
}
public static void cadastrar(ArrayList<String>Produto){
Scanner ler = new Scanner(System.in);
String nome;
int valor = Integer.getInteger(JOptionPane.showInputDialog(null,"(informe o nome do Produto)\n"));
nome = ler.nextLine();
//Grava os dados no fim da lista
Produto.add(nome + ".");
}
public static void excluir(ArrayList<String>Produto){
Scanner ler = new Scanner(System.in);
int i;
listar(Produto);
int valor=Integer.parseInt(JOptionPane.showInputDialog(null,"\n(Informe o indice da posição a ser excluida)\n"));
i = ler.nextInt();
try{
Produto.remove(i);
}catch(IndexOutOfBoundsException err){
// exceção lançada para indicar que um índice (i)
// está fora do intervalo válido (de 0 até Produto.size()-1)
System.out.printf("\n(Erro: Posição não encontrada(%s).)\n\n", err.getMessage());
}
}
public static void listar(ArrayList<String>Produto){
System.out.printf("\n(Listando os itens da lista)\n");
int i, n = Produto.size();
for (i=1;i<n;i++){
System.out.printf("( %d- %s)\n",i,Produto.get(i));
}
System.out.printf("--------------------------------------------------");
}
public static void pesquisar(ArrayList<String>Produto){
Scanner ler = new Scanner(System.in);
String s;
int valor = Integer.parseInt(JOptionPane.showInputDialog(null,"\n(Informe a primeira letra ou o nome do Produto a ser Pesquisado)\n"));
s = ler.nextLine();
s = s.toUpperCase();
String dados[];
int i, n = Produto.size();
for(i = 0;i<n;i++){
// informando "joão", por exemplo, na entrada serão mostrados
// todos os contatos que possuem "joão" no nome
if(Produto.get(i).toUpperCase().indexOf(s)!=-1){
dados = Produto.get(i).split(":");
System.out.printf("\n(Nome....:%s)\n",dados[0]);
}
/** Método para buscar os dados da lista */
}
}