randomaccess+netty实现文件上传

qq_29436593 2018-06-06 05:02:48
我在用netty和randomaccessfile做文件的断点续传的时候,遇到了服务端不关闭上传的文件是被占用的,不可删除的状态,但是我明明就有使用randomaccessfile.close()关闭啊,为什么会这样
...全文
955 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_29436593 2018-06-07
  • 打赏
  • 举报
回复
已解决,还是犯了一个低级的错误,并没有关闭所有的randomaccessfile
qq_29436593 2018-06-07
  • 打赏
  • 举报
回复
我用的是randomaccessfile操作的文件,关闭全部randomaccessfile之后还是显示文件被java占用无法删除,我这是在netty服务端写入的,只有关闭了整个服务端的时候才能解除占用
qq_29436593 2018-06-07
  • 打赏
  • 举报
回复
RandomAccessFile randomAccessFile = new RandomAccessFile(file, "rws"); String path1 = file_dir+ File.separator + fileName.substring(0, fileName.lastIndexOf(".")) + "_temp" + fileName.substring(fileName.lastIndexOf(".")); File f = new File(path1); RandomAccessFile randomAccessFile1 = new RandomAccessFile(f, "rws"); randomAccessFile.seek(start); // 开始写文件 randomAccessFile.write(bytes); randomAccessFile1.seek(start); randomAccessFile1.write(bytes); start = start + byteRead; if (byteRead > 0) { ctx.writeAndFlush(start); } if("q".equals(status)){ randomAccessFile1.close(); randomAccessFile.close(); if(!f.delete()){ System.gc(); f.delete(); } 这是部分代码
tianfang 2018-06-06
  • 打赏
  • 举报
回复
上代码才知道,异常情况(如:客户端主动断开)处理了吗

50,336

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧