首页 > 解决方案 > Java创建多个新文件

问题描述

我在这里阅读了这个问题如何在 java 的目录中创建文件?

我有一个创建二维码的方法。该方法被调用多次,取决于用户输入。

这是一个代码片段:

String filePath = "/Users/Test/qrCODE.png";
int size = 250;
//tbd
String fileType = "png";
File myFile = new File(filePath);

问题:如果用户键入“2”,则此方法将被触发两次。结果,第一个 qrCODE.png 文件将被第二个 qrCODE.png 替换,所以第一个丢失了。

如何生成多个具有不同名称的二维码,例如 qrCODE.png 和 qrCODE(2).png

我的想法:

if (!myFile.exists()) {
    try {
        myFile.createNewFile();
    } catch (IOException e) {
        e.printStackTrace();
    }
}

有小费吗?

编辑:我通过使用 for 循环并在每个循环步骤中增加文件名中的数字来解决它。

标签: javafileqr-code

解决方案


您可以创建更多文件,例如。如下

int totalCount = 0; //userinput

String filePath = "/Users/Test/";
String fileName= "qrCODE";
String fileType = "png";

for(int counter = 0; counter < totalCount; counter++){
    int size = 250;
    //tbd
    File myFile = new File(filePath+fileName+counter+"."+fileType);
    /*
       will result into files qrCODE0.png, qrCODE1.png, etc.. 
        created at the given location
    */
}

顺便说一句,添加检查文件是否存在也是一个好点。

{...}
 if(!myFile.exists()){
    //file creation
    myFile.createNewFile()
 }else{
   //file already exists
 } 
{...}

推荐阅读