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

时间:2012-01-08 16:55:19

标签: java

我认为我有一个非常奇怪的问题。我在一个已经存在的代码中使用了一个类 - 主要用于打开“保存对话框”窗口。使用的代码如下:

String savedName;


if (OperatingSystem.isMacOSX()) {
  savedName = showFileDialog(parentView, dialogTitle, contentType, name, true);
} else {
  savedName = showFileChooser(parentView, dialogTitle, contentType, name, true);
}

所以我所做的就是将它放入块注释中,现在我想保存项目,每次调用类时都使用不同的名称。此名称将使用以下代码从数组中获取:

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++;
       }
    }

我想要的是一个提示,以便找到我如何理解这个类的调用方式。

提前致谢。

1 个答案:

答案 0 :(得分:0)

如果要使用文件名作为参数调用原始方法(第一个代码段),请修改方法以接受名为savedName的附加参数,删除方法内的声明,并将其余部分保持原样。 / p>

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.
}

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