代码之家  ›  专栏  ›  技术社区  ›  asm

在textfile中写入文本并使用saveDialog保存

  •  0
  • asm  · 技术社区  · 16 年前

    我想在一个文本文件中写一个字符串,它应该由save对话框动态保存。 我已经静态地完成了这个任务,这意味着将创建具有指定文件名的文件,并从中写入文本 JTextArea . 我想用我的名字把这个文件保存在我指定的位置。你能在这方面指导我吗?

    do{
        String fileData=jTextArea1.getText();
        byte buf[]=fileData.getBytes();
    
        JFileChooser chooser = new JFileChooser();
                FileNameExtensionFilter filter = new FileNameExtensionFilter("Text/fasta files", ".txt", ".fasta");
                chooser.setFileFilter(filter);
                int returnVal = chooser.showSaveDialog(null);
    
                    if (returnVal == JFileChooser.APPROVE_OPTION) {
                        System.out.println("inside try after retVal");
                        try{
                            //OutputStream f2=new FileOutputStream("filename.txt");
                            OutputStream f2=new FileOutputStream("file.txt");
    
                            f2.write(buf);
                            f2.close();
                            } catch (IOException ex) {
                                Logger.getLogger(CreatingFile.class.getName()).log(Level.SEVERE, null, ex);
                                                    }
    
    
                    } else {
                        return null;
                    } //else ends
    
    
        // TODO add your handling code here:
    }while(true);
    
    2 回复  |  直到 14 年前
        1
  •  1
  •   camickr    16 年前

    使用打包在BufferedWriter中的FileWriter,而不是FileOutputStream。

        2
  •  0
  •   Zed    16 年前

    使用

    new FileOutputStream(chooser.getName());
    

    而不是

    new FileOutputStream("file.txt");