首頁 資料庫 mysql教程 JAVA远程访问共享目录

JAVA远程访问共享目录

Jun 07, 2016 pm 05:45 PM
import new quot smb

 1.2 jcifs

  Jcifs pan>是一个用JAVA开发的SMB客户端库,利用jcifs可以操作windows共享文件,可以得到域用户,实现单点登录,最新版本为:1.3.12,官方网址:http://jcifs.samba.org/

  2. 代码实现

  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") ;

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

<🎜>:泡泡膠模擬器無窮大 - 如何獲取和使用皇家鑰匙
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系統,解釋
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆樹的耳語 - 如何解鎖抓鉤
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1666
14
CakePHP 教程
1425
52
Laravel 教程
1323
25
PHP教程
1272
29
C# 教程
1251
24
Python 的 import 是怎麼運作的? Python 的 import 是怎麼運作的? May 15, 2023 pm 08:13 PM

你好,我是somenzz,可以叫我徵哥。 Python的import是非常直覺的,但即使這樣,有時你會發現,明明套件就在那裡,我們仍會遇到ModuleNotFoundError,明明相對路徑非常正確,就是報錯ImportError:attemptedrelativeimportwithnoknownparentpackage導入同一個目錄的模組和不同的目錄的模組是完全不同的,本文透過分析使用import經常遇到的一些問題,來幫助你輕鬆搞定import,據此,你可以輕鬆創建屬

如何在 Mac 上映射網路驅動器 如何在 Mac 上映射網路驅動器 Apr 14, 2023 am 08:49 AM

如何使用 Finder 在 Mac 上映射網路磁碟機來映射網路磁碟機的最快方法是使用Finder應用程式。此方法將建立到您的網路磁碟機的臨時連線。但是,在您重新啟動 Mac 後,它不會保留在原位。 macOS 支援Samba (SMB) 網路共享。這是在 Windows、Mac 和(在較小程度上)Linux 上使用的常見檔案共用協定。由於它的跨平台支持,您的網路磁碟機很可能會使用 Samba 進行網路檔案共享,本教學將假定為這樣。使用 Finder 在 Mac 上映射網路磁碟機:從 Dock 或 La

SMB安裝CentOS及CentOS安裝Samba SMB安裝CentOS及CentOS安裝Samba Feb 14, 2024 pm 05:15 PM

在Linux系統中,Samba是一個非常重要的工具,它允許Linux系統與Windows系統之間進行文件和印表機共享,Samba提供了一種簡單而有效的方法來實現跨平台的文件共享,使得Linux系統可以與Windows系統無縫連接,本文將介紹如何在CentOS上安裝Samba,並設定檔共用。 CentOS作為一種流行的Linux發行版,提供了簡單而快速的方法來安裝和配置Samba,以下是在CentOS上安裝Samba的步驟:在安裝任何軟體之前,我們應該先更新系統以獲取最新的軟體包和安全補丁,打開終

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 Jun 13, 2016 am 10:23 AM

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

link標籤和import有什麼差別 link標籤和import有什麼差別 Aug 28, 2023 am 11:19 AM

link標籤和import的差異有語法和用途、功能和特性、載入時機、相容性和支援等。詳細介紹:1、語法和用途,link標籤是HTML標籤,用於在HTML文件中引入外部資源,如CSS樣式表、JavaScript腳本、圖示等,import是ES6中的模組導入語法,用於在JavaScript文件中引入外部模組;2、功能和特性,link標籤可以引入多種資源,如CSS樣式表、圖示等等。

link和import的區別細說:分析它們有何不同? link和import的區別細說:分析它們有何不同? Jan 06, 2024 am 08:19 AM

深入解析:link與import的差別是什麼?在開發網頁或應用程式時,我們經常需要引入外部的CSS檔案或JavaScript庫來增強或自訂我們的程式碼。在這個過程中,link和import是兩種常用的方法。雖然它們的目的都是引入外部資源,但在具體的使用上有一些差異。語法與位置:link:使用link標籤將外部資源連結到HTML檔案中,通常位於HTML文件的頭

如何解決import包時報Java套件不存在的問題 如何解決import包時報Java套件不存在的問題 Apr 19, 2023 am 10:22 AM

網路上有很多解決方式,我想到的都匯總起來了,方便以後查看,你可能採用其中一種就能解決問題,我是用了最後一種才解決。如果你要導入的包在Libraries下都本身一直沒有存在,你這時就得看看pom裡對應的依賴寫的有沒有問題,名字版本什麼的在使用的倉庫中有沒有對應的jar包,如果確定沒有問題,那麼再嘗試採取以下的前幾種方式解決。 1.執行Maven->reloadproject作用:重新匯入Maven包2種方式:1.選擇Project目錄右鍵->Maven->reloadproject2

淺析node中怎麼使用import語法 淺析node中怎麼使用import語法 Mar 21, 2023 pm 06:53 PM

node.js支援import語法,很簡單一個知識點,但卻能提醒我們從知識迷思裡走出來,多關注外邊的知識世界,不斷打開自己的知識邊界。

See all articles