Boa Noite (Madrugada) Pessoal.....como vão??
Desculpem o incomodo, mas pela segunda vzs venho pedir a ajuda de vcs :oops: !!!
Na verdade busquei / pesquisei em tudo quanto é lugar (uns 4 dias), achei mtas coisas sobre Runtime, mas não consegui fazer 1 funcionar dentro do meu código :shock: !!!
a coisa eh: Gostaria de executar um problema (batch) que está na mesma pasta do .class... um arquivo chamado executavel.bat ou um comando do DOS. (A calculadora em sí funciona normalmente)...
usei as linhas a abaixo:
Process executa = Runtime.getRuntime().exec("executavel.bat");
ou (a linha que eu acho mais interessante usar pela objetividade)...
Process executa = Runtime.getRuntime().exec("cmd /c cls");
Mas aparece o bendito erro:
[color=red]Unreported exception java.io.IOException; must be caught or declared to be thrown[/color]
Então segui as instruções do NetBeans, cliquei numas instruções e ele add algumas linhas try-catch, mas ñ adiantou nada =\...os erros sumiram mas não foi executado o executavel.bat O.O"!!!
Me parece que ele pede para declarar alguma coisa com relação a classe IOException neh, ou estou errado :oops: ???
A propósito, vocês me recomendam usar: BufferedReader + InputStreamReader + IOException........ou Scanner para entrada de dados??? (eu optei pelo Scanner por ser tb mais objetivo O.o")....no entanto ñ se usa o try-catch neh!!!
Desde jah, Fico Grato por qualquer luz \o/!!!
Abraços!
o código inteiro eh esse:
package calculadoras;
import java.util.Scanner;
import java.io.IOException;
public class CalcKonsole {
public static void main(String[] args){ /*na verdade aqui seria "public static void CKonsole()" porque tem outros tipos de Calcs junto, mas voltei pro main(String[] args) pra facilitar pra vcs \o/ */
int op;
do {
Scanner escolhe = new Scanner(System.in);
System.out.print("\n§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§");
System.out.print("\n§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§\n");
System.out.println(" \nEntre com a Operacao Desejada: (Ou Digite 5 para sair) \n\n");
System.out.println(" [1]Adicao\n\n [2]Subtracao\n\n [3]Multiplicacao\n\n [4]Divicao\n\n");
System.out.print("§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§\n");
System.out.print("§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§\n");
op = escolhe.nextInt();
/*AQUI*/ Process p = Runtime.getRuntime().exec("cmd /c cls"); /* O ERRO: Unreported exception java.io.IOException; must be caught or declared to be thrown */
switch(op) {
case 1 : new CalcKonsole().somar(); break;
case 2 : new CalcKonsole().subtrair(); break;
case 3 : new CalcKonsole().multiplicar(); break;
case 4 : new CalcKonsole().dividir(); break;
}
} while(op != 5);
}
public void SOMA(){
somar();
}
public void SUBTRACAO(){
subtrair();
}
public void MULTIPLICAO(){
multiplicar();
}
public void DIVISAO(){
dividir();
}
private void somar(){
Scanner num1 = new Scanner(System.in);
Scanner num2 = new Scanner(System.in);
System.out.print(" Entre com o primeiro valor : ");
float n1 = num1.nextFloat();
System.out.print(" Entre com o segundo valor : ");
float n2 = num2.nextFloat();
System.out.println(" \n\nResultado da Adicao : " + (n1+n2));
}
private void subtrair(){
Scanner num1 = new Scanner(System.in);
Scanner num2 = new Scanner(System.in);
System.out.print(" Entre com o primeiro valor : ");
float n1 = num1.nextFloat();
System.out.print(" Entre com o segundo valor : ");
float n2 = num2.nextFloat();
System.out.println(" \n\nResultado da Subtracao : " + (n1-n2));
}
private void multiplicar(){
Scanner num1 = new Scanner(System.in);
Scanner num2 = new Scanner(System.in);
System.out.print(" Entre com o primeiro valor : ");
float n1 = num1.nextFloat();
System.out.print(" Entre com o segundo valor : ");
float n2 = num2.nextFloat();
System.out.println(" \n\nResultado da Multiplicacao : " + (n1*n2));
}
private void dividir(){
Scanner num1 = new Scanner(System.in);
Scanner num2 = new Scanner(System.in);
System.out.print(" Entre com o primeiro valor : ");
float n1 = num1.nextFloat();
System.out.print(" Entre com o segundo valor : ");
float n2 = num2.nextFloat();
if(n2 == 0){
System.out.println(" \n\nNAO EXISTE DIVISAO POR ZERO.");
}
else{
System.out.println(" \n\nResultado da Divisao : " + (n1/n2));
}
}
}
