Java 用于保存文件的类,每次使用不同的名称保存文件

Java 用于保存文件的类,每次使用不同的名称保存文件,java,Java,我想我有一个很奇怪的问题。我正在使用一个类(在现有代码中),该类主要用于打开保存对话框窗口。使用的代码如下所示: String savedName; if (OperatingSystem.isMacOSX()) { savedName = showFileDialog(parentView, dialogTitle, contentType, name, true); } else { savedName = showFileChooser(parentView, dialogTi

我想我有一个很奇怪的问题。我正在使用一个类(在现有代码中),该类主要用于打开保存对话框窗口。使用的代码如下所示:

String savedName;


if (OperatingSystem.isMacOSX()) {
  savedName = showFileDialog(parentView, dialogTitle, contentType, name, true);
} else {
  savedName = showFileChooser(parentView, dialogTitle, contentType, name, true);
}
所以我所做的就是把它放到block comment中,现在我想保存这个项目,每次调用这个类时都使用不同的名称。此名称将使用以下代码从数组中获取:

int m = 0;

for (HomePieceOfFurniture piece : home.getFurniture()) {
  if (piece.isVisible()) {
         m++;
  } } // A table used to save the names of the furniture and initialize it
String [] Furniture = new String[m];   
m = 0;

for (HomePieceOfFurniture piece : home.getFurniture()) {
   if (piece.isVisible()) {
       // "a" is used to save the name of the furniture piece
       String a = piece.getName();
       Furniture[m] = a;
       //System.out.printf(Furniture[m]);
       m++;
       }
    }
我想要的是一个提示,让我知道如何理解这个类是如何被调用的


提前感谢。

如果要将原始方法调用为以文件名作为参数的第一个代码段,请修改该方法以接受名为savedName的添加参数,删除该方法中的声明,其余部分保持原样

public void someMethod(String savedName) {
    // The commented-out code that used to ask for a filename.
    // if (OperatingSystem.isMacOSX()) {
    //     savedName = showFileDialog(parentView, dialogTitle, contentType, name, true);
    // } else {
    //     savedName = showFileChooser(parentView, dialogTitle, contentType, name, true);
    // }

    // Rest of method stays the same.
    File f = new File(savedName);
    // etc.
}

然后从创建文件名的新代码中调用它。

如何调用什么类?如果要将原始方法调用为以文件名作为参数的第一个代码段,请修改该方法以接受名为savedName的添加参数,删除该方法内的声明,你注释掉的代码不保存文件-它只允许用户选择文件位置和名称。我认为你在这方面是完全正确的…我会尝试:@Paul Yeah,我想做的是控制保存的名称和位置:@DaveNewton有正确的答案。您只需将savedName设置为所需的值。