C# image.Save(path + name)保存图片时检查是否存在同名图片
path为路径,name为图片名(格式XXX.png)是否可以检测文件夹中有没同名图片,如果有,则保存的名称变为XXX(1).png,或者XXX(1).png也已经存在,...
path为路径,name为图片名(格式XXX.png)
是否可以检测文件夹中有没同名图片,如果有,则保存的名称变为XXX(1).png,或者XXX(1).png也已经存在,变成XXX(2).png,以此类推,求指教 展开
是否可以检测文件夹中有没同名图片,如果有,则保存的名称变为XXX(1).png,或者XXX(1).png也已经存在,变成XXX(2).png,以此类推,求指教 展开
2个回答
2014-12-17
展开全部
if (File.Exists(path + name)) //如果已经存在
{
image.Save(path + newname);
}
追问
有处理newname的方法吗,就是后面加(1),或者有(1)了变成(2)的那种?
追答
自己去判断啊:
string longName = "xxx.png";
string newLongName = ""; //新名称
string[] nameSplit = longName.Split('.');//xxx和png
string name = nameSplit[0];//xxx
if (name.Substring(name.Length - 1, 1) == ")")
{
string[] splitName = name.Split(new char[2] { '(', ')' }); //3个 xxx|12|空
if (splitName.Length >= 3) //说明文件名是以(2)这种数字结尾的
{
string startname = longName.Substring(0, name.Length - 2 - splitName[splitName.Length - 2].Length); //取出文件名括号前面的字符串 xxx
int newNumber = Convert.ToInt32(splitName[splitName.Length - 2]) + 1;
newLongName = startname + "(" + newNumber + ")" + "." + nameSplit[1];
}
}
else
{
newLongName = name + "(1)" + "." + nameSplit[1];
}
Console.WriteLine(newLongName);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询