file.delete() 返回fasle的问题处理

最近在移除文件是时候,发现一个很奇怪的问题.

文件是存在的,但是调用file.delete() 总是返回false

在网上测试了很多方法 比如文件流没有关闭 多线程操作 需要垃圾回收一下

最后测试发现调用 System.gc(); 问题就得到解决了

下面上代码

 File file = new File(manageColumnDetail.getImagePath());
                    if (file.isFile() && file.exists()) {
                        System.gc(); //加上确保文件能删除,不然可能删不掉
                        boolean delete = file.delete();
                        log.info("delete:[{}]", delete);

                    }

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
ORACLE函数大全 ________________________________________ 作者:[本站编辑] 来源:[CSDN] 浏览:[ ] SQL中的单记录函数 1.ASCII 返回与指定的字符对应的十进制数; SQL> select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') space from dual; A A ZERO SPACE --------- --------- --------- --------- 65 97 48 32 2.CHR 给出整数,返回对应的字符; SQL> select chr(54740) zhao,chr(65) chr65 from dual; ZH C -- - 赵 A 3.CONCAT 连接两个字符串; SQL> select concat('010-','88888888')||'转23' 高乾竞电话 from dual; 高乾竞电话 ---------------- 010-88888888转23 4.INITCAP 返回字符串并将字符串的第一个字母变为大写; SQL> select initcap('smith') upp from dual; UPP ----- Smith 5.INSTR(C1,C2,I,J) 在一个字符串中搜索指定的字符,返回发现指定的字符的位置; C1 被搜索的字符串 C2 希望搜索的字符串 I 搜索的开始位置,默认为1 J 出现的位置,默认为1 SQL> select instr('oracle traning','ra',1,2) instring from dual; INSTRING --------- 9 6.LENGTH 返回字符串的长度; SQL> select name,length(name),addr,length(addr),sal,length(to_char(sal)) from gao.nchar_tst; NAME LENGTH(NAME) ADDR LENGTH(ADDR) SAL LENGTH(TO_CHAR(SAL)) ------ ------------ ---------------- ------------ --------- -------------------- 高乾竞 3 北京市海锭区 6 9999.99 7 7.LOWER 返回字符串,并将所有的字符小写 SQL> select lower('AaBbCcDd')AaBbCcDd from dual; AABBCCDD -------- aabbccdd 8.UPPER 返回字符串,并将所有的字符大写 SQL> select upper('AaBbCcDd') upper from dual; UPPER -------- AABBCCDD 9.RPAD和LPAD(粘贴字符) RPAD 在列的右边粘贴字符 LPAD 在列的左边粘贴字符 SQL> select lpad(rpad('gao',10,'*'),17,'*')from dual; LPAD(RPAD('GAO',1 ----------------- *******gao******* 不够字符则用*来填满 10.LTRIM和RTRIM LTRIM 删除左边出现的字符串 RTRIM 删除右边出现的字符串 SQL> select ltrim(rtrim(' gao qian jing ',' '),' ') from dual; LTRIM(RTRIM(' ------------- gao qian jing 11.SUBSTR(string,start,count) 取子字符串,从start开始,取count个 SQL> select substr('13088888888',3,8) from dual; SUBSTR(' -------- 08888888 12.REPLACE('string','s1','s2') string 希望被替换的字符或变量 s1 被替换的字符串 s2 要替换的字符串 SQL> select replace('he love you','he','i') from dual; REPLACE('H ---------- i love you 13.SOUNDEX 返回一个与给定的字符串读音相同的字符串 SQL> create table table1(xm varchar(8)); SQL> insert into table1 values('weather'); SQL> insert into table1 values('wether'); SQL>
ASP.NET无刷新上传 很不错的多文件 带进度条的 无刷新上传 绝对好用~~~ <script> var QuickUpload = function(file, options) { this.file = $$(file); this._sending = false;//是否正在上传 this._timer = null;//定时器 this._iframe = null;//iframe对象 this._form = null;//form对象 this._inputs = {};//input对象 this._fFINISH = null;//完成执行函数 $$.extend(this, this._setOptions(options)); }; QuickUpload._counter = 1; QuickUpload.prototype = { //设置默认属性 _setOptions: function(options) { this.options = {//默认值 action: "",//设置action timeout: 0,//设置超时(秒为单位) parameter: {},//参数对象 onReady: function(){},//上传准备时执行 onFinish: function(){},//上传完成时执行 onStop: function(){},//上传停止时执行 onTimeout: function(){}//上传超时时执行 }; return $$.extend(this.options, options || {}); }, //上传文件 upload: function() { //停止上一次上传 this.stop(); //没有文件返回 if ( !this.file || !this.file.value ) return; //可能在onReady中修改相关属性所以放前面 this.onReady(); //设置iframe,form和表单控件 this._setIframe(); this._setForm(); this._setInput(); //设置超时 if ( this.timeout > 0 ) { this._timer = setTimeout( $$F.bind(this._timeout, this), this.timeout * 1000 ); } //开始上传 this._form.submit(); this._sending = true; }, //设置iframe _setIframe: function() { if ( !this._iframe ) { //创建iframe var iframename = "QUICKUPLOAD_" + QuickUpload._counter++, iframe = document.createElement( $$B.ie ? "<iframe name=\"" + iframename + "\">" : "iframe"); iframe.name = iframename; iframe.style.display = "none"; //记录完成程序方便移除 var finish = this._fFINISH = $$F.bind(this._finish, this); //iframe加载完后执行完成程序 if ( $$B.ie ) { iframe.attachEvent( "onload", finish ); } else { iframe.onload = $$B.opera ? function(){ this.onload = finish; } : finish; } //插入body var body = document.body; body.insertBefore( iframe, body.childNodes[0] ); this._iframe = iframe; } }, //设置form _setForm: function() { if ( !this._form ) { var form = document.createElement('form'), file = this.file; //设置属性 $$.extend(form, { target: this._iframe.name, method: "post", encoding: "multipart/form-data" }); //设置样式 $$D.setStyle(form, { padding: 0, margin: 0, border: 0, backgroundColor: "transparent", display: "inline" }); //提交前去掉form file.form && $$E.addEvent(file.form, "submit", $$F.bind(this.dispose, this)); //插入form file.parentNode.insertBefore(form, file).appendChild(file); this._form = form; } //action可能会修改 this._form.action = this.action; }, //设置input _setInput: function() { var form = this._form, oldInputs = this._inputs, newInputs = {}, name; //设置input for ( name in this.parameter ) { var input = form[name]; if ( !input ) { //如果没有对应input新建一个 input = document.createElement("input"); input.name = name; input.type = "hidden"; form.appendChild(input); } input.value = this.parameter[name]; //记录当前input newInputs[name] = input; //删除已有记录 delete oldInputs[name]; } //移除无用input for ( name in oldInputs ) { form.removeChild( oldInputs[name] ); } //保存当前input this._inputs = newInputs; }, //停止上传 stop: function() { if ( this._sending ) { this._sending = false; clearTimeout(this._timer); //重置iframe if ( $$B.opera ) {//opera通过设置src会有问题 this._removeIframe(); } else { this._iframe.src = ""; } this.onStop(); } }, //销毁程序 dispose: function() { this._sending = false; clearTimeout(this._timer); //清除iframe if ( $$B.firefox ) { setTimeout($$F.bind(this._removeIframe, this), 0); } else { this._removeIframe(); } //清除form this._removeForm(); //清除dom关联 this._inputs = this._fFINISH = this.file = null; }, //清除iframe _removeIframe: function() { if ( this._iframe ) { var iframe = this._iframe; $$B.ie ? iframe.detachEvent( "onload", this._fFINISH ) : ( iframe.onload = null ); document.body.removeChild(iframe); this._iframe = null; } }, //清除form _removeForm: function() { if ( this._form ) { var form = this._form, parent = form.parentNode; if ( parent ) { parent.insertBefore(this.file, form); parent.removeChild(form); } this._form = this._inputs = null; } }, //超时函数 _timeout: function() { if ( this._sending ) { this._sending = false; this.stop(); this.onTimeout(); } }, //完成函数 _finish: function() { if ( this._sending ) { this._sending = false; this.onFinish(this._iframe); } } } </script>

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值