java - 如果 java 应用程序崩溃,如何删除本地文件?
问题描述
我正在构建 java 应用程序,它下载一些文件,修改它们并将其部署到目的地。部署文件后,程序将删除所有本地文件。
try{
...
//logic to download/modify files
}catch(){
...
//catch exceptions
}finally{
...
//logic to delete all the files
}
除非我在应用程序执行过程中终止(命令提示符中的 ctrl+c)应用程序,否则这工作正常。
如果应用程序崩溃,有什么方法可以删除相同的文件?
解决方案
试试这个文件的shutdownhook - https://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Runtime.html#addShutdownHook%28java.lang.Thread%29
Runtime.getRuntime().addShutdownHook(new Thread() {
public void run() {
//Undo changes or delete files codes
}
});
推荐阅读
- sql-server - 使用 sql server 将列动态拆分/分隔为多个列
- ios - 如何让应用程序显示用户当前位置的地图,然后将所述用户引导到设定位置?
- python - Formatting ticks labels matplotlib and adding string value
- java - 无法使用 testNG、maven、NetBeans 仅从一个类运行我的测试
- wordpress - Wordpress 将小部件添加到仪表板
- python - 防止 matplotlib 函数 psd() 绘图 - 或更快的替代方案
- javascript - React TypeError:无法读取未定义的属性“绑定”
- r - rowSums(Qf) 中的错误:“x”必须是至少二维的数组 (msm::msm2surv)
- c# - NET CORE 2.0 将 IHtmlLocalizer 放入 _Layout 并在 .cshtml 文件中使用
- javascript - Javascript删除事件并添加事件