【问题标题】:Java write to file and save it by fileChooserJava写入文件并通过fileChooser保存
【发布时间】:2016-11-03 16:43:21
【问题描述】:

我是 java 新手,从过去两年开始使用 netbeans 8 将我的代码从 VB 转移到 java。 现在我想将循环累积数据写入文件并最后 使用下面的 FlieChooser 将生成的文件保存到特定位置 是我的代码,但是当我在 doilog 中写名称并按 Enter 时,我的桌面中看不到任何文件:

public void   SaveToFile() throws IOException {
 try (Writer writer = new BufferedWriter(new OutputStreamWriter(
          new FileOutputStream("test.txt"), "utf-8"))) {
     int i=0;
     String Data[]=new String[10];
   while( i<10 ){
 writer.write("Student No :" + i);
  Data[i]= "Student No :" + i;
  ++i;
    }



   }

        int userSelection = db.showSaveDialog(this);
     if (userSelection == JFileChooser.APPROVE_OPTION) {
        File fileToSave = db.getCurrentDirectory();
                    String path = fileToSave.getAbsolutePath();
                    path = path.replace("\\", File.separator);
                    System.out.println("Save as file: " + path);

    }
    }

【问题讨论】:

  • 对于过去曾否决任何问题的人来说,任何问题对他们来说似乎都很容易或必不可少,这没有意义,您至少应该连同您的否决票一起表明问题是否被重新提出,或者至少如果没有以提及投票的原因。他们当中有一种倾向,我习惯于不回答复杂的问题,只投反对票对他们来说似乎很容易,这就是我在许多无人参与的情况下感觉到的,这就是为什么我曾经在这里多问几个谷歌,我可以得到更好的帮助!跨度>

标签: java netbeans-8 filechooser


【解决方案1】:

我发现这有几个问题。第一,您在此处显示的代码均未显示在选择目录后调用任何“.Save()”或复制或移动方法。二、File 对象指向的是一个目录,而不是文件名。第三,您的初始 Writer 对象可能正在将 test.txt 写入您的 .class 或 .jar 文件运行时所在的目录。

在开始写入磁盘之前,您需要弄清楚要使用的目录和文件名。

更新

public void   SaveToFile() throws IOException {
    int userSelection = db.showSaveDialog(this);
    if (userSelection == JFileChooser.APPROVE_OPTION) {
        File fileToSave = db.getCurrentDirectory();
        String path = fileToSave.getAbsolutePath() + File.separator + "test.txt";

        try (Writer writer = new BufferedWriter(new OutputStreamWriter(
                  new FileOutputStream(path), "utf-8"))) {
            int i=0;
            //String Data[]=new String[10];
            while( i<10 ){
                writer.write("Student No :" + i);
                //Data[i]= "Student No :" + i; // Not sure why Data[] exists?
                ++i;
            }
        }

        System.out.println("Save as file: " + path);
    }
}

我认为这与您需要的差不多。我目前没有 java 编译器,所以我不能确定这是否都是好的语法。但是网上有很多Java教程。

【讨论】:

  • 你能指导我如何将字符串“Data”中的数据加载到文件中,然后如何使用名为“db”的文件选择器来保存它
  • 在我看来,你走在正确的轨道上,你只需要稍微改变一下顺序。我不是 100% 热衷于 Java,但编程原理基本相同。
猜你喜欢
  • 1970-01-01
  • 2022-11-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-12-16
  • 2019-07-05
  • 1970-01-01
相关资源
最近更新 更多