java JFileChooser选择文件和保存文件

//文件过滤器
import java.io.File;

import javax.swing.filechooser.FileFilter;

public class MyFilter extends FileFilter{
    private String[] filterString = null;
    public MyFilter(String[] filStrings){
        this.filterString = filStrings;
    }
    public boolean accept(File file){
           if(file.isDirectory()) return true;
           for(int i=0; i<filterString.length; ++i)
               if(file.getName().endsWith(filterString[i]))
                   return true;
           /* 返回要显示的文件类型 */
           /*
            *   File.isDirectory()测试此抽象路径名表示的文件是否是一个目录
           */
           return false;
      }

      public String getDescription() {
          String ss = "";
          for(int i=0; i<filterString.length; ++i)
              ss += " *" + filterString[i];
          return("Txt Files(" + ss + ")");                  //返回显示文件类型的描述
      }
}
//文件的选择
          JFileChooser jfc = new JFileChooser();
                //设置文件的过滤器
                String[] filterString = {".cpp", ".c"};
                MyFilter filter = new MyFilter(filterString);
                //获取jar包位置,设置JFileChooser当前路径
                String jarFilePath = Main.class.getProtectionDomain().getCodeSource().getLocation().getFile();
                try {
                    jarFilePath = URLDecoder.decode(jarFilePath, "UTF-8");
                } catch (UnsupportedEncodingException ex) {
                    ex.printStackTrace();
                }
                jfc.setCurrentDirectory(new File(jarFilePath));
                jfc.setFileFilter(filter);
                jfc.showOpenDialog(null);
                File fl = jfc.getSelectedFile();
                if(fl != null){
                    String code = "";
                    try {
                        BufferedReader br = new BufferedReader(new FileReader(fl));
                        String newLine = null;
                        boolean flag = true;
                        while((newLine=br.readLine()) != null){
                        }
                    } catch (FileNotFoundException ex) {
                        ex.printStackTrace();
                    } catch (IOException ex) {
                        ex.printStackTrace();
                    }
                }
//文件的保存
            JFileChooser jfc = new JFileChooser();
                    String[] filterString = {".txt"};
                    //设置文件的过滤器
                    MyFilter filter = new MyFilter(filterString);
                    //获取jar包位置,设置JFileChooser当前路径
                    String jarFilePath = LexicalAnalyzer.class.getProtectionDomain().getCodeSource().getLocation().getFile();
                    try {
                        jarFilePath = URLDecoder.decode(jarFilePath, "UTF-8");
                    } catch (UnsupportedEncodingException e) {
                        e.printStackTrace();
                    }
                    jfc.setCurrentDirectory(new File(jarFilePath));
                    jfc.setFileFilter(filter);
                    jfc.showSaveDialog(null);
                    File fl = jfc.getSelectedFile();
                    OutputStreamWriter osw;
                    try {
                        osw = new OutputStreamWriter(new FileOutputStream(fl));
                        String text = textPane.getText();
                        osw.write(text, 0, text.length());
                        osw.flush();
                        osw.close();
                    } catch (FileNotFoundException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    } catch (IOException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
时间: 2024-09-28 12:42:39

java JFileChooser选择文件和保存文件的相关文章

C#操作本地文件及保存文件到数据库的基本方法总结_C#教程

命名空间: using System.IO; 写文本文件 StreamWriter sw=File.CreateText("c:\\text.txt"); sw.WriteLine("C#"); //写入一行文本 sw.Write("www.csdn.net"); //在文本末尾写入文本 sw.Flush(); //清空 sw.Close(); //关闭 读文本文件 StreamReader sr = File.OpenText("c:

asp 读取文件和保存文件函数代码_应用技巧

'************************************* '读取文件 '************************************* Function LoadFromFile(ByVal File) Dim objStream Dim RText RText = Array(0, "") Set objStream = Server.CreateObject("ADODB.Stream") With objStream .Type

asp 读取文件和保存文件函数代码

'************************************* '读取文件 '************************************* Function LoadFromFile(ByVal File) Dim objStream Dim RText RText = Array(0, "") Set objStream = Server.CreateObject("ADODB.Stream") With objStream .Type

使用java实现http多线程断点下载文件(一)_java

基本原理:利用URLConnection获取要下载文件的长度.头部等相关信息,并设置响应的头部信息.并且通过URLConnection获取输入流,将文件分成指定的块,每一块单独开辟一个线程完成数据的读取.写入.通过输入流读取下载文件的信息,然后将读取的信息用RandomAccessFile随机写入到本地文件中.同时,每个线程写入的数据都文件指针也就是写入数据的长度,需要保存在一个临时文件中.这样当本次下载没有完成的时候,下次下载的时候就从这个文件中读取上一次下载的文件长度,然后继续接着上一次的位

excel2010怎么保存文件

  excel2010怎么保存文件?保存文件具体有两种方式: 方法一: 在"文件"菜单下点击"保存"按钮,如下图所示: excel2010 在弹出的"另存为"对话框中,我们可以选择文件的保存位置及更改文件名后,点击"保存"按钮,就可以对文件进行保存了. excel2010 方法二: 按"ctrl+s"快捷键后可以调出上图中"另存为"界面,这是按照上述步骤就可以进行文件的保存了.

Asp.net 文件上传类(取得文件后缀名,保存文件,加入文字水印)_实用技巧

复制代码 代码如下: using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; usi

中文乱码-ckdinder整合进java里面选择文件后返回路径名带中文的变成乱码

问题描述 ckdinder整合进java里面选择文件后返回路径名带中文的变成乱码 在java上使用ckfinder,上传文件成功,中文名也行,就是选择这个带中文名的文件时,返回的路径变成乱码 解决方案 URIEncoding=""UTF-8""你看看你的tomcat有没有设置这个

C#下载文件时候弹出选择文件夹保存目录的代码

下载 //保存文件夹选择对话框引用//添加引用system.design.dll   /using System.Windows.Forms.Design; private void button4_Click(object sender, System.EventArgs e)  {    //选择文件的保存路径   //添加窗体控件folderBrowserDialog1   DirBrowser   olderBrowserDlg=new   DirBrowser();          

想问一下Java中常用的配置文件保存格式。例如:我的程序中可以添加很多FTP的信息,我想问一下这些FTP信息最常用什么格式保存成文件?

问题描述 想问一下Java中常用的配置文件保存格式.例如:我的程序中可以添加很多FTP的信息,我想问一下这些FTP信息最常用什么格式保存成文件? 解决方案 解决方案二:我一般用xml文件来保存,用Properties这个类来读取解决方案三:一般用XML文件吧.我用XML保存,用DOM4J来读写