浅谈SmbFile 远程获取服务器文件

本文介绍了如何在内网环境中通过SmbFile类访问服务器上的文件,特别是当服务器不支持HTTP协议时。首先,需要共享服务器的文件夹,然后引入jcifs-1.3.17.jar库。通过SmbFile,可以带或不带凭证来访问文件,实现远程文件的下载。同时,还提供了一个简单的CSV文件读取示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近碰到一个需求,需要在内网里面访问服务器上面的文件,读取里面的文件信息,并保存到数据库中。一开始想到的是用URL读取到文件流,以下为URL地址转为文件流的方法:

public static InputStream getUrlInputStream(String urlAddress) {
	try {
		URL url = new URL(urlAddress);
		URLConnection urlConnection = url.openConnection();
		return urlConnection.getInputStream();
	} catch (MalformedURLException e) {
		e.printStackTrace();
	} catch (IOException e) {
		e.printStackTrace();
	}
	return null;
}

然后将文件下载到本地,再通过读取本地文件的形式来进行处理。但是要是服务器上面不支持Http的协议,那上面的方法就不能用了。在经过查找资料以后,我采用了SmbFile类来实现了上面的问题,具体的使用方法介绍如下。

1、在使用SmbFile的时候,需要共享服务器上面的文件所在文件夹(怎么共享文件夹请问度娘,不同的服务器共享方式不同),这里提醒一下,父文件夹共享就可以了,比如你的文件在D:/11/22/1.csv,你把D:/11/文件夹共享了,22文件夹自然也是可以访问到的,也就是说你要访问1.csv文件,你共享了D:/11/22/和共享D:/11/都是可以的。

2、导入jar包,我用的是jcifs-1.3.17.jar

3、使用SmbFile来远程获取服务器上面的文件了

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值