这是我要做的:每次单击该按钮时,都会打开一个打开文件对话框,用户单击图片,然后将该图片复制到特定文件夹并重命名为数字。此文件夹中每张图片的名称都应该是数字,但是它们都必须不同。到目前为止,我的代码:
index.html
当然,这里将第一张图片复制并重命名为“ 0.png”,但由于“ if”为真,因此根本不会复制下一张图片。有任何想法吗 ?谢谢。
答案 0 :(得分:1)
您可以这样做:
...
int i = 0;
while (System.IO.File.Exists(picturedir + "\\" + i.ToString() + ".png") == true)
{
i++;
// I wouldn't show that message each time, gonna get pretty old for lots of pics!
}
System.IO.File.Copy(openfile.FileName, picturedir + "\\" + i.ToString() + ".png", true);
...
答案 1 :(得分:1)
如果需要下一个数字,则可以枚举现有文件,找到当前正在使用的最大数字,然后添加1。类似:
var files = Directory.EnumerateFiles(myCurrentDirectory, "*.png");
var fileNumStrings = from file in files select Path.GetFileNameWithoutExtension(file);
var max = 0;
foreach (var fileNumString in fileNumStrings)
{
if (int.TryParse(fileNumString, out var filenum))
{
if (filenum > max)
{
max = filenum;
}
}
}
var nextNum = max + 1;