Java Gui jframe的工作方式与netbeans不同
我有这个问题,我认为图像可能比解释它更好。这个Java程序是在netbeans中构建的,当我在netbeans中运行它时,它工作得很好。但是,当我从文件夹中运行它时,单击Java茶杯,它只能运行一部分Java Gui jframe的工作方式与netbeans不同,java,swing,Java,Swing,我有这个问题,我认为图像可能比解释它更好。这个Java程序是在netbeans中构建的,当我在netbeans中运行它时,它工作得很好。但是,当我从文件夹中运行它时,单击Java茶杯,它只能运行一部分 试试看{ String key=Password.getText(); if(key.length()8 | |!key.equals(“密码”)){ showMessageDialog(null,“不是有效键”); }否则{ DESKeySpec dks=新的DESKeySpec(key.g
试试看{
String key=Password.getText();
if(key.length()<8 | | key.length()>8 | |!key.equals(“密码”)){
showMessageDialog(null,“不是有效键”);
}否则{
DESKeySpec dks=新的DESKeySpec(key.getBytes());
SecretKeyFactory skf=SecretKeyFactory.getInstance(“DES”);
SecretKey desKey=skf.generateSecret(dks);
AlgorithmParameterSpec paramSpec=新的IvParameterSpec(iv);
Code.dcipher=Cipher.getInstance(“DES/CBC/PKCS5Padding”);
Code.dcipher.init(Cipher.DECRYPT_模式,desKey,paramSpec);
Code.decrypt(新文件输入流(“encrypted.txt”),
新的FileOutputStream(“cleartextreversed.txt”);
BufferedReader br=新的BufferedReader(新文件读取器(
“cleartext reversed.txt”);
试一试{
StringBuilder sb=新的StringBuilder();
String line=br.readLine();
while(行!=null){
某人附加(行);
line=br.readLine();
}
已解密字符串=sb.toString();
DisplayArea2.setText(已解密);
}捕获(IOEX异常){
Logger.getLogger(MainApp.class.getName()).log(Level.SEVERE,
零,ex);
}最后{
试一试{
br.close();
}捕获(IOEX异常){
Logger.getLogger(MainApp.class.getName()).log(
级别(严重、空、ex);
}
}
}
}catch(InvalidKeyException | NoSuchAlgorithmException
|InvalidKeySpecException | NoSuchPaddingException
|InvalidalgorithParameterException | FileNotFoundException ex){
Logger.getLogger(MainApp.class.getName()).log(Level.SEVERE,null,
ex);
}
对不起,这不是咖啡吗?@eldo不,这是著名的:P.your encrypted.txt(您在FileInputStream中使用的那一个)是否与打包的jar位于同一目录中?日志记录程序的信息要到哪里去?请附上一个我们可以用来重现问题的文件。
try {
String key = Password.getText();
if (key.length() < 8 || key.length() > 8 || !key.equals("Password")) {
JOptionPane.showMessageDialog(null, "Not a valid key");
} else {
DESKeySpec dks = new DESKeySpec(key.getBytes());
SecretKeyFactory skf = SecretKeyFactory.getInstance("DES");
SecretKey desKey = skf.generateSecret(dks);
AlgorithmParameterSpec paramSpec = new IvParameterSpec(iv);
Code.dcipher = Cipher.getInstance("DES/CBC/PKCS5Padding");
Code.dcipher.init(Cipher.DECRYPT_MODE, desKey, paramSpec);
Code.decrypt(new FileInputStream("encrypted.txt"),
new FileOutputStream("cleartext-reversed.txt"));
BufferedReader br = new BufferedReader(new FileReader(
"cleartext-reversed.txt"));
try {
StringBuilder sb = new StringBuilder();
String line = br.readLine();
while (line != null) {
sb.append(line);
line = br.readLine();
}
String decrypted = sb.toString();
DisplayArea2.setText(decrypted);
} catch (IOException ex) {
Logger.getLogger(MainApp.class.getName()).log(Level.SEVERE,
null, ex);
} finally {
try {
br.close();
} catch (IOException ex) {
Logger.getLogger(MainApp.class.getName()).log(
Level.SEVERE, null, ex);
}
}
}
} catch (InvalidKeyException | NoSuchAlgorithmException
| InvalidKeySpecException | NoSuchPaddingException
| InvalidAlgorithmParameterException | FileNotFoundException ex) {
Logger.getLogger(MainApp.class.getName()).log(Level.SEVERE, null,
ex);
}