2017-07-07 19 views
-1

我有一些問題,有人可以幫助我,我是新的Java。我想在我的計算機上保存jframe的內容,並且我需要在計算機上保存該文件後再次打開程序,而不是txt文件,而不是pdf?有人能幫助我嗎? 這是JFrame的enter image description here如何在NetBeans中將內容從Jframe保存到我的電腦中?

這是代碼,但現在它不工作

package servis1; 

import java.io.BufferedReader; 
import java.io.BufferedWriter; 
import java.io.File; 
import java.io.FileWriter; 
import java.io.StringReader; 
import javax.swing.JFileChooser; 

/** 
* 
* @author Boris 
*/ 
public class NewJFrame extends javax.swing.JFrame { 
    private String data; 
    JFileChooser chooser = new JFileChooser(); 

/** 
* Creates new form NewJFrame 
*/ 
public NewJFrame() { 
    initComponents(); 
} 
@SuppressWarnings("unchecked") 
    // <editor-fold defaultstate="collapsed" desc="Generated Code">       
    private void initComponents() { 

    jLabel1 = new javax.swing.JLabel(); 
    Imeiprezime = new java.awt.Label(); 
    textField1 = new java.awt.TextField(); 
    label2 = new java.awt.Label(); 
    textField2 = new java.awt.TextField(); 
    label3 = new java.awt.Label(); 
    label4 = new java.awt.Label(); 
    textField4 = new java.awt.TextField(); 
    label5 = new java.awt.Label(); 
    textField5 = new java.awt.TextField(); 
    label6 = new java.awt.Label(); 
    label7 = new java.awt.Label(); 
    jComboBox1 = new javax.swing.JComboBox(); 
    jLabel2 = new javax.swing.JLabel(); 
    jComboBox2 = new javax.swing.JComboBox(); 
    jScrollPane1 = new javax.swing.JScrollPane(); 
    jTextArea1 = new javax.swing.JTextArea(); 
    jScrollPane2 = new javax.swing.JScrollPane(); 
    jTextArea2 = new javax.swing.JTextArea(); 
    jButton1 = new javax.swing.JButton(); 

    setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); 

    jLabel1.setFont(new java.awt.Font("Times New Roman", 1, 14)); // NOI18N 
    jLabel1.setText("POTVDA O PRIJEMU NA SERVIS"); 

    Imeiprezime.setFont(new java.awt.Font("Dialog", 1, 12)); // NOI18N 
    Imeiprezime.setText("Ime i prezime:"); 

    label2.setFont(new java.awt.Font("Dialog", 1, 12)); // NOI18N 
    label2.setText("Broj telefona:"); 

    label3.setFont(new java.awt.Font("Dialog", 1, 12)); // NOI18N 
    label3.setText("Proizvodjac:"); 

    label4.setFont(new java.awt.Font("Dialog", 1, 12)); // NOI18N 
    label4.setText("Model:"); 

    label5.setFont(new java.awt.Font("Dialog", 1, 12)); // NOI18N 
    label5.setText("IMEI:"); 

    label6.setFont(new java.awt.Font("Dialog", 1, 12)); // NOI18N 
    label6.setText("Opis kvara:"); 

    label7.setFont(new java.awt.Font("Dialog", 1, 12)); // NOI18N 
    label7.setText("Napomena:"); 

    jComboBox1.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Apple", "Samsung", "HTC", "Huawei" })); 

    jLabel2.setFont(new java.awt.Font("Tahoma", 1, 11)); // NOI18N 
    jLabel2.setText("Primio na servis:"); 

    jComboBox2.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Marko Markovic", "Petar Petrovic", "Janko Jankovic" })); 

    jTextArea1.setColumns(20); 
    jTextArea1.setRows(5); 
    jScrollPane1.setViewportView(jTextArea1); 

    jTextArea2.setColumns(20); 
    jTextArea2.setRows(5); 
    jScrollPane2.setViewportView(jTextArea2); 

    jButton1.setText("Sacuvaj"); 
    jButton1.addActionListener(new java.awt.event.ActionListener() { 
     public void actionPerformed(java.awt.event.ActionEvent evt) { 
      jButton1ActionPerformed(evt); 
     } 
    }); 

    javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); 
    getContentPane().setLayout(layout); 
    layout.setHorizontalGroup(
     layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
     .addGroup(layout.createSequentialGroup() 
      .addGap(23, 23, 23) 
      .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
       .addComponent(Imeiprezime, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) 
       .addComponent(label2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) 
       .addComponent(label3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) 
       .addComponent(label4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) 
       .addComponent(label5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) 
       .addComponent(label6, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) 
       .addComponent(label7, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) 
       .addComponent(jLabel2)) 
      .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) 
      .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
       .addComponent(jLabel1) 
       .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) 
        .addComponent(jComboBox1, 0, 400, Short.MAX_VALUE) 
        .addComponent(textField1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) 
        .addComponent(textField2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) 
        .addComponent(textField4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) 
        .addComponent(textField5, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) 
        .addGroup(layout.createSequentialGroup() 
         .addComponent(jComboBox2, javax.swing.GroupLayout.PREFERRED_SIZE, 166, javax.swing.GroupLayout.PREFERRED_SIZE) 
         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) 
         .addComponent(jButton1) 
         .addGap(49, 49, 49)) 
        .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 400, Short.MAX_VALUE) 
        .addComponent(jScrollPane2))) 
      .addContainerGap(79, Short.MAX_VALUE)) 
    ); 
    layout.setVerticalGroup(
     layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
     .addGroup(layout.createSequentialGroup() 
      .addGap(30, 30, 30) 
      .addComponent(jLabel1) 
      .addGap(25, 25, 25) 
      .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
       .addComponent(Imeiprezime, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) 
       .addComponent(textField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) 
      .addGap(24, 24, 24) 
      .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
       .addComponent(label2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) 
       .addComponent(textField2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) 
      .addGap(18, 18, 18) 
      .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
       .addComponent(label3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) 
       .addComponent(jComboBox1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) 
      .addGap(18, 18, 18) 
      .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) 
       .addComponent(label4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) 
       .addComponent(textField4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) 
      .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) 
      .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
       .addComponent(label5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) 
       .addComponent(textField5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) 
      .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) 
      .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
       .addComponent(label6, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) 
       .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) 
      .addGap(22, 22, 22) 
      .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) 
       .addComponent(label7, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) 
       .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) 
      .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 41, Short.MAX_VALUE) 
      .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) 
       .addComponent(jLabel2) 
       .addComponent(jComboBox2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) 
       .addComponent(jButton1)) 
      .addGap(60, 60, 60)) 
    ); 

    pack(); 
}   


private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {           
     // TODO add your handling code here: 
      int retValue = chooser.showSaveDialog(null); 
     if(retValue == chooser.APPROVE_OPTION){ 
     File f = chooser.getSelectedFile(); 
     try{ 
      BufferedReader reader = new BufferedReader(new StringReader(data));//data is string to save 
      BufferedWriter writer = new BufferedWriter(new FileWriter(f)); 
      String str; 
      while((str = reader.readLine())!= null){ 
       writer.write(str + System.getProperty("line.separator")); 
     } 
     }catch(Exception ex){ 
      System.out.println("Error!"); 
        } 
     } 


    }     



/** 
* @param args the command line arguments 
*/ 
public static void main(String args[]) { 
    /* Set the Nimbus look and feel */ 
    //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) "> 
    /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. 
    * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html 
    */ 
    try { 
     for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { 
      if ("Nimbus".equals(info.getName())) { 
       javax.swing.UIManager.setLookAndFeel(info.getClassName()); 
       break; 
      } 
     } 
    } catch (ClassNotFoundException ex) { 
     java.util.logging.Logger.getLogger(NewJFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); 
    } catch (InstantiationException ex) { 
     java.util.logging.Logger.getLogger(NewJFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); 
    } catch (IllegalAccessException ex) { 
     java.util.logging.Logger.getLogger(NewJFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); 
    } catch (javax.swing.UnsupportedLookAndFeelException ex) { 
     java.util.logging.Logger.getLogger(NewJFrame.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); 
    } 
    //</editor-fold> 

    /* Create and display the form */ 
    java.awt.EventQueue.invokeLater(new Runnable() { 
     public void run() { 
      new NewJFrame().setVisible(true); 
     } 
    }); 
} 

// Variables declaration - do not modify      
private java.awt.Label Imeiprezime; 
private javax.swing.JButton jButton1; 
private javax.swing.JComboBox jComboBox1; 
private javax.swing.JComboBox jComboBox2; 
private javax.swing.JLabel jLabel1; 
private javax.swing.JLabel jLabel2; 
private javax.swing.JScrollPane jScrollPane1; 
private javax.swing.JScrollPane jScrollPane2; 
private javax.swing.JTextArea jTextArea1; 
private javax.swing.JTextArea jTextArea2; 
private java.awt.Label label2; 
private java.awt.Label label3; 
private java.awt.Label label4; 
private java.awt.Label label5; 
private java.awt.Label label6; 
private java.awt.Label label7; 
private java.awt.TextField textField1; 
private java.awt.TextField textField2; 
private java.awt.TextField textField4; 
private java.awt.TextField textField5; 
// End of variables declaration     

`

+0

這聽起來像你問如何將信息保存到計算機而不保存信息到計算機 –

+0

此程序是爲移動商店,其關於客戶和有關修復手機信息。也許你不明白我,我想保存在計算機上我需要,但不是在TXT,PDF ...因爲當我點擊保存的文件,我想再次打開程序,所以我可以編輯,而不是打開單詞,pdf ... –

+0

因此,請自行組建自己的擴展程序 –

回答

0

,我認爲是不可能不存儲在電腦上的信息檢索前關閉它。我的意思是:當你關閉一個程序時,所有的數據都將被銷燬,從而使其RAM塊可用。所以你必須使用類似XML文件構建器的東西,在那裏你可以轉儲信息,暫時存儲在計算機上(在程序文件夾F.E中),然後檢索它並刪除文件。

相關問題