java 如何用JFileChooser保存文件
就是一个保存功能,把当前JTextArea存为txt文件,下面这个怎么改??baocun.addActionListener(newActionListener(){pu...
就是一个保存功能,把当前JTextArea存为txt文件,下面这个怎么改??
baocun.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JFileChooser chooser = new JFileChooser();
FileNameExtensionFilter filter = new FileNameExtensionFilter("TXT","txt");//建立过滤器
chooser.setFileFilter(filter);//开始过滤
int returnVal =chooser.showSaveDialog(chooser);
if(returnVal == JFileChooser.APPROVE_OPTION) {
File file = chooser.getSelectedFile();
if (file.exists()) {
int copy = JOptionPane.showConfirmDialog(null,"是否要覆盖当前文件?", "保存", JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE);
if (copy == JOptionPane.YES_OPTION){
chooser.approveSelection();
}
}
else
chooser.approveSelection();
}
}
}); 展开
baocun.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JFileChooser chooser = new JFileChooser();
FileNameExtensionFilter filter = new FileNameExtensionFilter("TXT","txt");//建立过滤器
chooser.setFileFilter(filter);//开始过滤
int returnVal =chooser.showSaveDialog(chooser);
if(returnVal == JFileChooser.APPROVE_OPTION) {
File file = chooser.getSelectedFile();
if (file.exists()) {
int copy = JOptionPane.showConfirmDialog(null,"是否要覆盖当前文件?", "保存", JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE);
if (copy == JOptionPane.YES_OPTION){
chooser.approveSelection();
}
}
else
chooser.approveSelection();
}
}
}); 展开
2个回答
展开全部
保存文件,其实就是IO的操作,将内存中的数据写入本地磁盘。可以用字节流OutputStream或是字符流Writer来完成。如果你写的是文本,建议用BufferedWriter,并且一行一行的写入。如果流的操作不清楚的,再问我
追问
我想有个可以选择保存目录的窗口
追答
JFileChooser功能很强大的,你可以设置它的setFileSelectionMode(int )设置它只能选择目录就行。
setFileSelectionModepublic void setFileSelectionMode(int mode)设置 JFileChooser,以允许用户只选择文件、只选择目录,或者可选择文件和目录。默认值是
JFilesChooser.FILES_ONLY。
参数:mode - 要显示的文件类型:
JFileChooser.FILES_ONLY
JFileChooser.DIRECTORIES_ONLY
JFileChooser.FILES_AND_DIRECTORIES
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询