简单的java访问共享文件
2008-01-05 09:32:08 来源:WEB开发网核心提示:一、所用开发工具:(1)、eclipse :httP://www.eclipse.org(2)、jcifs :http://jcifs.samba.org/二、前言 : 在Microsoft 网 络 系 统 中,SMB(Server Message Block,简单的java访问共享文件, 服 务 信 息 块) 协
一、所用开发工具:(1)、eclipse :httP://www.eclipse.org(2)、jcifs :http://jcifs.samba.org/
二、前言 :
在Microsoft 网 络 系 统 中,SMB(Server Message Block, 服 务 信 息 块) 协 议 是Windows for Workgroup(WfWg)、Windows 95、Windows NT 和LanManager 用 来 实 现 共 享 局 域 网 上 文 件 和 打 印 机 的 协 议。 对 于 利 用linux 和Windows NT 构 建 的 局 域 网 来 说,Samba 就 是 为Linux 提 供 的SMB 客 户 程 序/ 服 务 器 程 序 的 软 件 包, 其 功 能 是 实 现Windows 和Linux 互 相 共 享 对 方 的 磁 盘 空 间 和 打 印 机。通用网络文件系统简称CIFS,它事实上是windows平台文件共享的标准协议,它是windows eXPlorer,网络邻居和映射网络驱动器的底层实现协议。java具有天然的平台无关性,使用JAVA可以访问任何类型的服务器或客户机上的共享文件系统,并且编写的软件产品可以运行于任何平台,因此用JAVA访问共享文件系统在企业应用中具有得天独厚的优势。
JAVA中的CIFS实现
Jcifs是CIFS在JAVA中的一个实现,是samba组织本着linux的精神,负责维护开发的一个开源项目。这个项目专注于使用java语言对cifs协议的设计和实现。他们将jcifs设计成为一个完整的,丰富的,具有可扩展能力且线程安全的客户端库。这一库可以应用于各种java虚拟机访问遵循CIFS/SMB网络传输协议的网络资源。类似于java.io.File的接口形式,在多线程的工作方式下被证实是有效而轻易使用的。目前jcifs的最新版本是jcifs-1.1.9
三:配置:(1)、设置运行环境,将jcifs-1.1.9.jar添加到工程 工程----->属性------->java builder path ------>库--------->添加外部jar ok!(2)、在另外一台计算机上建立共享文件夹和共享文件,本例中分别为:test ,response.txt(3)、编译运行下面程序
四、代码 :import jcifs.smb.SmbFileInputStream;public class ReadShareFile {
public static void main(String[] args) { byte buffer[] = new byte[1024] ; int readed = 0 ; try{ SmbFileInputStream in = new SmbFileInputStream ("smb://administrator:122122@192.168.0.22/test/response.txt") ; //建立smb文件输入流 while((readed = in.read(buffer)) != -1){ System.out.write(buffer); } }catch(Exception e){ e.PRintStackTrace(); } }}
五:代码说明 :smb://administrator:122122@192.168.0.22/test/response.txtsmb: 协议名为smbadministrator:登录用户名 注:为共享文件机子的登录名122122:登录密码 注:密码和登录用户名要以 “:”分割192.168.0.22:共享文件机子的iptest:共享文件夹response.txt:共享文件
非凡说明:前言转载于: 薛谷雨
更多精彩
赞助商链接