-6
ファイル名がすでに存在する場合、私はチェックしていたファイルを格納する前に、私NEWIMAGE保証を次のコードファイル名が既に存在するかどうかを確認する方法?
以下のコードで問題がされていることを利用していないのです。このため
(上書きを防ぐために)既に存在していません。
public static String ImageOverrideChecker(String image_name)throws IOException{
String newimage = "";
ArrayList<String> image_nameslist = new ArrayList<String>();
File file = new File("/Images/");
File[] files = file.listFiles();
for(File f: files){
image_nameslist.add(f.getName());
}
if(image_nameslist.contains(image_name))
{
Random randomGenerator = new Random();
int randomInt = randomGenerator.nextInt(1000);
Matcher matcher = Pattern.compile("(.*)\\.(.*?)").matcher(image_name);
if (matcher.matches())
{
newimage = String.format("%s_%d.%s", matcher.group(1), randomInt,matcher.group(2));
}
}
else
{
newimage = image_name;
}
return newimage;
}
file.existsメソッドで確認できます。または何かこのような '試してみる(OutputStream out = Files.newOutputStream(path、StandardOpenOption.CREATE_NEW))' – XtremeBaumer
ファイルにメソッドがあった場合は、これをチェックすることができます。 – wvdz
http://stackoverflow.com/questions/ 1816673/how-do-i-check-if-a-file-exists-javaその非常に簡単な検索... – Guy