KVM安装工作记录
2013-11-19 10:43
225 查看
一个令人纠结的问题:java程序运行在windows平台上,需要对远程linux服务器上的文件进行操作,如何判断一个指定目录是否在远程服务器上已经存在?
因为两个平台的文件系统不一样,不能简单地通过java.io.File里的exists()来实现。在我看来非常强大的com.jcraft.jsch.ChannelSftp也没有直接提供类似的api。想来想去,找到了一个比较tricky的方法。
先来看一小段代码:
在不考虑其它一切外部因素的情况下,目标目录dir如果已经存在,content不会为null,哪怕它是一个空目录,如果dir不存在,会抛出一个SftpException,在catch block里可以作进一步处理。
哪位有什么更好的方法,可以交流交流。
因为两个平台的文件系统不一样,不能简单地通过java.io.File里的exists()来实现。在我看来非常强大的com.jcraft.jsch.ChannelSftp也没有直接提供类似的api。想来想去,找到了一个比较tricky的方法。
先来看一小段代码:
try{ Vector content = channelSftp.ls(dir); if(content == null) { channelSftp.mkdir(dir); } } catch (SftpException e) { channelSftp.mkdir(dir); }
在不考虑其它一切外部因素的情况下,目标目录dir如果已经存在,content不会为null,哪怕它是一个空目录,如果dir不存在,会抛出一个SftpException,在catch block里可以作进一步处理。
哪位有什么更好的方法,可以交流交流。
相关文章推荐
- 利用NIO建立Socket服务器
- solr4.5 mmseg4j 分词器配置
- Oracle安装――LINUX 操作系统安装图解
- 28个 HTML5新特性
- squid3.0 隐藏 hearder 设置
- vim 使用
- tcpdump
- Hibernate模板的使用问题
- MVC上传图片
- android 性能优化
- cocos2d-x:cocos2d-x坐标系详解
- 记录备忘,Windows2003 vdi 转 img后蓝屏的解决方法
- Android4.2.2 Gallery2源码分析(1)——从布局入手 .
- java构造方法
- oracle 导入EXCEL数据的简单方法
- ContentPlaceHolder
- linux crontab简介
- 开源python网络爬虫框架Scrapy
- 交换机指标
- 利用DIID_DWebBrowserEvents2接口接收WebBrowser事件 .