我创建了一个按钮来创建文本文件,这里一切正常
但是问题是当我创建第一个TXT文件时,我不知道我需要什么或者我需要做什么,来继续动态地创建TXT文件。
下面是我的代码:int c;
c = 0;
c++;
String Name = "TXT" + c +".txt";
File TXT = new File(Name);
TXT.createNewFile();
创建一个:TXT1.txt但是不能创建TXT2.txt, TXT3.txt等等
我想动态地增加这个数字。谢谢你的阅读。
将其包装在for循环中,并像这样排除计数器:
for(int i = 1; i < yourMaximumRun; ++i)
{
String Name = "TXT" + i +".txt";
File TXT = new File(Name);
try
{
TXT.createNewFile();
}
}
如果这是你的方法中的代码,c总是从0开始并递增到1。
如果您再次按下按钮,c将再次以0开始并递增。您需要在方法外部的某个地方持久化您的c,而不是每次都重新初始化它。
来源为了模拟按钮的点击,我编写了这个小代码:1) Inside vs Outside:
如果你在方法中声明对象,它将只在方法中可见这个方法。基本上,如果你用括号括起来,它就只有
如果你在方法外部(类内部)声明你的对象,它取决于访问修饰符。默认情况下,它是可见/可访问的从这个类和整个包中。
静态2)
Static意味着这个对象/变量属于类本身,而不是它的对象
package main.application;
import java.io.File;
import java.io.IOException;
public class Main {
private static int incrementFileName = 1;
private static final String PATH = "C:\Users\user\Desktop\";
public static void main(String[] args) throws IOException {
//Each time the button is pressed.
for (int c = 0; c < 5; c++)
{
incrementFileName++;
buttonClicked();
}
}
private static void buttonClicked() throws IOException
{
String Name = "TXT" + incrementFileName +".txt";
File TXT = new File(PATH + Name);
TXT.createNewFile();
}
}
可以看到,您需要在用于创建new File
的方法之外声明incrementFileName
(您的c
),并在每次按下按钮时增加它。