自动重命名

@deprecate(该方法若应用于后端,在大并发多人协作下可能有性能问题)

com.gleasy.gcd.util.FileUtil.autoRename = function(files,name,tag){

    for(var i=0;i<files.length;i++){

        if(files[i].name == name){

            var pre = "";

            var suf = "";

            var index = name.lastIndexOf(".");

            if (index > 0) {

                pre = name.substring(0, index);

                suf = name.substring(index);

                var start = name.lastIndexOf('(');

                var end = name.lastIndexOf(')');

                if (start > 0 && end > start) {

                    try {

                        if(!tag){

                            name = trim(name.substring(0, start));

                        }else{

                            var count = parseInt(name.substring(start + 1, end));

                            count++;

                            pre = name.substring(0, start);

                            name = pre + "(" + count + ")";

                        }

                    } catch (e) {

                        name = pre + " (2)";

                    }

                } else {

                    name = pre + " (2)";

                }

                name = name + suf;

                return com.gleasy.gcd.util.FileUtil.autoRename(files, name,true);

            } else {

                var start = name.lastIndexOf('(');

                var end = name.lastIndexOf(')');

                if (start > 0 && end > start) {

                    try {

                        if(!tag){

                            name = trim(name.substring(0, start));

                        }else{

                            var count = parseInt(name.substring(start + 1, end));

                            count++;

                            pre = name.substring(0, start);

                            name = pre + "(" + count + ")";

                        }

                    } catch (e) {

                        name = pre + " (2)";

                    }

                } else {

                    name = name + " (2)";

                }

                return com.gleasy.gcd.util.FileUtil.autoRename(files, name,true);

            }

        }

    }

    return name;

}

猜你喜欢

转载自rudysysu.iteye.com/blog/1833288