亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 常見問題 > 正文

java 操作windows 共享目錄方法介紹

2019-12-24 02:46:46
字體:
來源:轉載
供稿:網友
相關知識介紹 
1.1 SMB 
Microsoft 網絡配置中主要采用SMB 形式實現文件共享和打印服務,SMB (服務器消息塊)是一種客戶端/ 服務器文件共享協議。IBM 于20 世紀80 年代末期開發了服務器信息塊(SMB ),用于規范共享網絡資源(如目錄、文件、打印機以及串行端口)的結構。這是一種請求/ 響應協議。與FTP 協議支持的文件共享不同,SMB 協議中的客戶端要與服務器建立長期連接。一旦建立連接,客戶端用戶就可以訪問服務器上的資源,就如同資源位于客戶端主機上一樣。 

從Windows 2000 系列軟件開始,Microsoft 修改了軟件的基礎結構,使其適用SMB 協議。而在以前的Microsoft 產品中,SMB 服務需要使用非TCP/IP 協議族來執行域名解析。從Windows 2000 開始,Microsoft 的所有產品都采用DNS 系統。由此,TCP/IP 協議族可以直接支持SMB 資源共享。

SMB協議中規定了文件系統訪問和客戶如何請求文件的方式以及SMB 協議進程間通信的方式。所有的SMB 消息都采用一種格式。該格式采用固定大小的文件頭,后跟可變 <script src="http://hi.images.csdn.net/js/blog/tiny_mce/themes/advanced/langs/zh.js" type="text/javascript"></script><script src="http://hi.images.csdn.net/js/blog/tiny_mce/plugins/syntaxhl/langs/zh.js" type="text/javascript"></script> 大小的參數以及數據組件。 
1.2 jcifs 
Jcifs <script src="http://hi.images.csdn.net/js/blog/tiny_mce/themes/advanced/langs/zh.js" type="text/javascript"></script><script src="http://hi.images.csdn.net/js/blog/tiny_mce/plugins/syntaxhl/langs/zh.js" type="text/javascript"></script> pan>是一個用JAVA 開發的SMB 客戶端庫,利用jcifs 可以操作windows 共享文件,可以得到域用戶,實現單點登錄,最新版本為:1.3.12 ,官方網址:http://jcifs.samba.org/ 

2. 代碼實現 
Java代碼 

復制代碼
代碼如下:

package uploadSMB; 
import java.io.BufferedInputStream; 
import java.io.BufferedOutputStream; 
import java.io.File; 
import java.io.FileInputStream; 
import java.io.FileOutputStream; 
import java.io.IOException; 
import java.io.InputStream; 
import java.io.OutputStream; 
import jcifs.smb.SmbFile; 
import jcifs.smb.SmbFileInputStream; 
import jcifs.smb.SmbFileOutputStream; 
public class UploadDownloadUtil { 
/** 
* Description: 從共享目錄拷貝文件到本地 
* @Version1.0 Sep 25, 2009 3:48:38 PM 
* @param remoteUrl 共享目錄上的文件路徑 
* @param localDir 本地目錄 
*/ 
public void smbGet(String remoteUrl,String localDir) { 
InputStream in = null; 
OutputStream out = null; 
try { 
SmbFile remoteFile = new SmbFile(remoteUrl); 
if(remoteFile==null){ 
System.out.println("共享文件不存在"); 
return; 

String fileName = remoteFile.getName(); 
File localFile = new File(localDir+File.separator+fileName); 
in = new BufferedInputStream(new SmbFileInputStream(remoteFile)); 
out = new BufferedOutputStream(new FileOutputStream(localFile)); 
byte[] buffer = new byte[1024]; 
while(in.read(buffer)!=-1){ 
out.write(buffer); 
buffer = new byte[1024]; 

} catch (Exception e) { 
e.printStackTrace(); 
} finally { 
try { 
out.close(); 
in.close(); 
} catch (IOException e) { 
e.printStackTrace(); 



/** 
* Description: 從本地上傳文件到共享目錄 
* @Version1.0 Sep 25, 2009 3:49:00 PM 
* @param remoteUrl 共享文件目錄 
* @param localFilePath 本地文件絕對路徑 
*/ 
public void smbPut(String remoteUrl,String localFilePath) { 
InputStream in = null; 
OutputStream out = null; 
try { 
File localFile = new File(localFilePath); 
String fileName = localFile.getName(); 
SmbFile remoteFile = new SmbFile(remoteUrl+"/"+fileName); 
in = new BufferedInputStream(new FileInputStream(localFile)); 
out = new BufferedOutputStream(new SmbFileOutputStream(remoteFile)); 
byte[] buffer = new byte[1024]; 
while(in.read(buffer)!=-1){ 
out.write(buffer); 
buffer = new byte[1024]; 

} catch (Exception e) { 
e.printStackTrace(); 
} finally { 
try { 
out.close(); 
in.close(); 
} catch (IOException e) { 
e.printStackTrace(); 



public static void main(String[] args){ 
UploadDownloadUtil test = new UploadDownloadUtil() ; 
// smb:域名;用戶名:密碼@目的IP/文件夾/文件名.xxx 
//test.smbGet("smb://szpcg;jiang.t:xxx@192.168.193.13/Jake/test.txt", "c://") ; 
test.smbPut("smb://szpcg;jiang.t:xxx@192.168.193.13/Jake", "c://test.txt") ; 


package uploadSMB; 
import java.io.BufferedInputStream; 
import java.io.BufferedOutputStream; 
import java.io.File; 
import java.io.FileInputStream; 
import java.io.FileOutputStream; 
import java.io.IOException; 
import java.io.InputStream; 
import java.io.OutputStream; 
import jcifs.smb.SmbFile; 
import jcifs.smb.SmbFileInputStream; 
import jcifs.smb.SmbFileOutputStream; 
public class UploadDownloadUtil { 
/** 
* Description: 從共享目錄拷貝文件到本地 
* @Version1.0 Sep 25, 2009 3:48:38 PM 
* @param remoteUrl 共享目錄上的文件路徑 
* @param localDir 本地目錄 
*/ 
public void smbGet(String remoteUrl,String localDir) { 
InputStream in = null; 
OutputStream out = null; 
try { 
SmbFile remoteFile = new SmbFile(remoteUrl); 
if(remoteFile==null){ 
System.out.println("共享文件不存在"); 
return; 

String fileName = remoteFile.getName(); 
File localFile = new File(localDir+File.separator+fileName); 
in = new BufferedInputStream(new SmbFileInputStream(remoteFile)); 
out = new BufferedOutputStream(new FileOutputStream(localFile)); 
byte[] buffer = new byte[1024]; 
while(in.read(buffer)!=-1){ 
out.write(buffer); 
buffer = new byte[1024]; 

} catch (Exception e) { 
e.printStackTrace(); 
} finally { 
try { 
out.close(); 
in.close(); 
} catch (IOException e) { 
e.printStackTrace(); 



/** 
* Description: 從本地上傳文件到共享目錄 
* @Version1.0 Sep 25, 2009 3:49:00 PM 
* @param remoteUrl 共享文件目錄 
* @param localFilePath 本地文件絕對路徑 
*/ 
public void smbPut(String remoteUrl,String localFilePath) { 
InputStream in = null; 
OutputStream out = null; 
try { 
File localFile = new File(localFilePath); 
String fileName = localFile.getName(); 
SmbFile remoteFile = new SmbFile(remoteUrl+"/"+fileName); 
in = new BufferedInputStream(new FileInputStream(localFile)); 
out = new BufferedOutputStream(new SmbFileOutputStream(remoteFile)); 
byte[] buffer = new byte[1024]; 
while(in.read(buffer)!=-1){ 
out.write(buffer); 
buffer = new byte[1024]; 

} catch (Exception e) { 
e.printStackTrace(); 
} finally { 
try { 
out.close(); 
in.close(); 
} catch (IOException e) { 
e.printStackTrace(); 



public static void main(String[] args){ 
UploadDownloadUtil test = new UploadDownloadUtil() ; 
// smb:域名;用戶名:密碼@目的IP/文件夾/文件名.xxx 
//test.smbGet("smb://szpcg;jiang.t:xxx@192.168.193.13/Jake/test.txt", "c://") ; 
test.smbPut("smb://szpcg;jiang.t:xxx@192.168.193.13/Jake", "c://test.txt") ; 


2.3 remoteUrl說明 
remoteUrl 如何填寫是值得注意的 
如果是無需密碼的共享,則類似如下格式: 
smb://ip/sharefolder (例如:smb://192.168.0.77/test ) 
如果需要用戶名、密碼,則類似如下格式: 
Smb://username:password@ip/sharefolder (例如:smb://chb:123456@192.168.0.1/test ) 
// smb:域名;用戶名:密碼@目的IP/文件夾/文件名.xxx 
//test.smbGet("smb://szpcg;jiang.t:xxx@192.168.193.13/Jake/test.txt", "c://") ; 
test.smbPut("smb://szpcg;jiang.t:xxx@192.168.193.13/Jake", "c://test.txt") ;
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美中文在线视频| 亚洲人午夜色婷婷| 欧美激情成人在线视频| 精品亚洲一区二区三区四区五区| 韩国三级电影久久久久久| 91精品91久久久久久| 国产精品自产拍在线观看| 色樱桃影院亚洲精品影院| 色狠狠av一区二区三区香蕉蜜桃| 亚洲大尺度美女在线| 国产亚洲欧美aaaa| 久久亚洲精品一区二区| 奇门遁甲1982国语版免费观看高清| 午夜精品久久17c| 狠狠久久五月精品中文字幕| 精品久久久久久中文字幕| 一本久久综合亚洲鲁鲁| 欧美激情啊啊啊| 国产一区二区黑人欧美xxxx| 精品免费在线视频| 91免费看视频.| 欧美日韩国产精品一区二区不卡中文| 午夜精品久久久久久99热软件| 91精品久久久久久久久久久久久久| 日韩在线观看免费全| 中文字幕日韩有码| 国产一区二区三区在线观看网站| 成人免费大片黄在线播放| 97香蕉超级碰碰久久免费的优势| 国产精品第8页| 亚洲国产另类久久精品| 欧美精品在线免费| 国产精品视频yy9099| 97精品视频在线播放| 亚洲欧美国产va在线影院| 国产视频观看一区| 91av网站在线播放| 国产91精品久久久久久久| 法国裸体一区二区| 日韩成人在线视频网站| 国产精品91视频| 色婷婷**av毛片一区| 亚洲午夜国产成人av电影男同| 中文字幕日韩精品在线| 国产精品成人一区二区三区吃奶| 日韩视频免费大全中文字幕| 国产香蕉一区二区三区在线视频| 26uuu另类亚洲欧美日本一| 97精品视频在线观看| 亚洲精品视频免费| 伊人久久综合97精品| 国产精品69久久久久| 国产精品99久久久久久白浆小说| 欧美亚洲国产另类| 欧美国产精品日韩| 97精品国产97久久久久久| 影音先锋日韩有码| 久久久97精品| 亚洲丝袜一区在线| 久久久免费在线观看| 久久久视频免费观看| 亚洲人精选亚洲人成在线| 亚洲а∨天堂久久精品9966| 欧美性生交xxxxx久久久| 欧美中文字幕在线播放| 神马久久久久久| 91精品久久久久久久久不口人| 欧美日韩在线免费| 亚洲高清不卡av| 91久久国产综合久久91精品网站| 成人免费视频网址| 奇米成人av国产一区二区三区| 欧美精品生活片| 狠狠色狠狠色综合日日小说| 4p变态网欧美系列| 韩日精品中文字幕| 欧美日韩第一视频| 中文字幕一区电影| 国产乱人伦真实精品视频| 欧美另类99xxxxx| 91精品国产99| 亚洲香蕉成人av网站在线观看| 欧美电影在线观看| 午夜精品一区二区三区在线视频| 久久视频在线直播| 欧美一级视频一区二区| 日韩电影中文字幕在线| 中文字幕亚洲综合| 久久久免费在线观看| 国产日韩一区在线| 亚洲男人av电影| 91亚洲精品久久久| 国产亚洲激情在线| 欧美性xxxx极品高清hd直播| 亚洲午夜久久久影院| 久久久久久久久久久成人| 久久久999精品免费| 在线观看视频亚洲| 亚洲乱码国产乱码精品精天堂| 色哟哟入口国产精品| 最新国产成人av网站网址麻豆| 成人黄色中文字幕| 国产z一区二区三区| 国产一区二区黄| 91夜夜揉人人捏人人添红杏| 国产一区二区三区中文| 青草成人免费视频| 欧美丝袜美女中出在线| 黑人巨大精品欧美一区二区一视频| 久久久久久美女| 日韩成人在线免费观看| 国产精品亚洲аv天堂网| 亚洲美女视频网站| 欧美性生交xxxxxdddd| 国产精品视频自拍| 国产精品一区二区三区久久| 91国产中文字幕| 日韩免费高清在线观看| 日韩av在线天堂网| 日本免费久久高清视频| 欧美电影在线播放| 97福利一区二区| 色与欲影视天天看综合网| 国产精品久久久久9999| 国产福利精品av综合导导航| 中文字幕9999| 亚洲乱码国产乱码精品精天堂| 中文字幕在线观看亚洲| 日韩黄色高清视频| 疯狂做受xxxx欧美肥白少妇| 欧美精品一二区| 亚洲一区二区三区久久| 亚洲福利在线播放| 国产做受高潮69| 日韩av在线播放资源| 中文字幕亚洲天堂| 成人精品aaaa网站| 亚洲国产精品美女| 91中文精品字幕在线视频| 成人av番号网| 日韩精品中文字幕在线播放| 欧洲成人免费视频| 国产视频一区在线| 亚洲欧美资源在线| 最近2019中文字幕大全第二页| 久久99精品视频一区97| 精品国产乱码久久久久久天美| 欧美成人免费va影院高清| 日韩黄色在线免费观看| 92看片淫黄大片看国产片| 欧美理论电影在线播放| 久久国产精彩视频| 亚洲天堂网站在线观看视频| 欧美成人网在线| 日韩国产精品亚洲а∨天堂免| 国产一区二区三区18| 国产99久久久欧美黑人| 成人国产精品日本在线| 欧美理论电影在线播放| 欧美激情二区三区| 国产欧美日韩免费看aⅴ视频| 久久久精品中文字幕| 清纯唯美亚洲激情| 亚洲精品久久久久中文字幕欢迎你|