Heim Datenbank MySQL-Tutorial 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") ;

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie funktioniert der Import von Python? Wie funktioniert der Import von Python? May 15, 2023 pm 08:13 PM

Hallo, mein Name ist somenzz, du kannst mich Bruder Zheng nennen. Der Import von Python ist sehr intuitiv, aber manchmal werden Sie feststellen, dass trotz des Vorhandenseins des Pakets immer noch ModuleNotFoundError auftritt. Der relative Pfad ist offensichtlich sehr korrekt, aber der Fehler ImportError:attemptedrelativeimportwithnoknownparentpackage importiert ein Modul im selben Verzeichnis ein anderes. Die Module des Verzeichnisses sind völlig unterschiedlich. Dieser Artikel hilft Ihnen, den Import zu vereinfachen, indem er einige Probleme analysiert, die bei der Verwendung des Imports auftreten. Auf dieser Grundlage können Sie problemlos Attribute erstellen.

So ordnen Sie ein Netzlaufwerk auf dem Mac zu So ordnen Sie ein Netzlaufwerk auf dem Mac zu Apr 14, 2023 am 08:49 AM

So ordnen Sie ein Netzlaufwerk auf dem Mac mit dem Finder zu Der schnellste Weg, ein Netzlaufwerk zuzuordnen, ist die Verwendung der Finder-Anwendung. Mit dieser Methode wird eine temporäre Verbindung zu Ihrem Netzlaufwerk hergestellt. Es bleibt jedoch nicht bestehen, nachdem Sie Ihren Mac neu gestartet haben. macOS unterstützt Samba (SMB)-Netzwerkfreigaben. Dies ist ein gängiges Dateifreigabeprotokoll, das unter Windows, Mac und (in geringerem Maße) Linux verwendet wird. Aufgrund der plattformübergreifenden Unterstützung verwendet Ihr Netzlaufwerk höchstwahrscheinlich Samba für die Dateifreigabe im Netzwerk, was in diesem Tutorial vorausgesetzt wird. Ordnen Sie ein Netzlaufwerk auf dem Mac mit dem Finder zu: Vom Dock oder La

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

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

SMB installiert CentOS und CentOS installiert Samba SMB installiert CentOS und CentOS installiert Samba Feb 14, 2024 pm 05:15 PM

In Linux-Systemen ist Samba ein sehr wichtiges Tool, das die Datei- und Druckerfreigabe zwischen Linux-Systemen und Windows-Systemen ermöglicht. Samba bietet eine einfache und effektive Methode zur plattformübergreifenden Dateifreigabe, sodass Linux-Systeme nahtlos mit Windows-Systemen verbunden werden können In diesem Artikel erfahren Sie, wie Sie Samba unter CentOS installieren und die Dateifreigabe konfigurieren. CentOS bietet als beliebte Linux-Distribution eine einfache und schnelle Möglichkeit, Samba auf CentOS zu installieren: Bevor wir Software installieren, sollten wir das System aktualisieren, um die neuesten Softwarepakete und Sicherheitspatches zu erhalten , öffnen Sie das Terminal

Der Unterschied zwischen Link und Import wird im Detail erklärt: Was sind die Unterschiede zwischen ihnen? Der Unterschied zwischen Link und Import wird im Detail erklärt: Was sind die Unterschiede zwischen ihnen? Jan 06, 2024 am 08:19 AM

Eingehende Analyse: Was ist der Unterschied zwischen Link und Import? Bei der Entwicklung von Webseiten oder Anwendungen müssen wir häufig externe CSS-Dateien oder JavaScript-Bibliotheken einführen, um unseren Code zu verbessern oder anzupassen. In diesem Prozess sind Verknüpfung und Import zwei häufig verwendete Methoden. Obwohl ihr Zweck darin besteht, externe Ressourcen einzuführen, gibt es einige Unterschiede in der spezifischen Verwendung. Syntax und Speicherort: Link: Verwenden Sie das Link-Tag, um externe Ressourcen in die HTML-Datei zu verlinken, die sich normalerweise am Kopf des HTML-Dokuments befindet

Was ist der Unterschied zwischen Link-Tag und Import? Was ist der Unterschied zwischen Link-Tag und Import? Aug 28, 2023 am 11:19 AM

Zu den Unterschieden zwischen Link-Tags und Import gehören Syntax und Verwendung, Funktionen und Features, Ladezeitpunkt, Kompatibilität und Support usw. Detaillierte Einführung: 1. Syntax und Verwendung. Das Link-Tag ist ein HTML-Tag, das zum Einfügen externer Ressourcen in HTML-Dokumente verwendet wird, z. B. CSS-Stylesheets, JavaScript-Skripte, Symbole usw. import ist die Modulimportsyntax in ES6, die in verwendet wird JavaScript-Dateien. Einführung externer Module; 2. Funktionen und Features. Das Link-Tag kann eine Vielzahl von Ressourcen einführen, z. B. CSS-Stylesheets, Symbole usw.

So lösen Sie das Problem, dass das Java-Paket beim Importieren des Pakets nicht vorhanden ist So lösen Sie das Problem, dass das Java-Paket beim Importieren des Pakets nicht vorhanden ist Apr 19, 2023 am 10:22 AM

Es gibt viele Lösungen im Internet, die ich zum späteren Nachschlagen zusammengefasst habe. Möglicherweise können Sie das Problem lösen, indem Sie die letzte Lösung verwenden. Wenn das Paket, das Sie importieren möchten, nicht unter „Bibliotheken“ vorhanden ist, müssen Sie prüfen, ob ein Problem mit den entsprechenden Abhängigkeiten im POM vorliegt und ob im verwendeten Warehouse ein entsprechendes JAR-Paket, z. B. die Namensversion, vorhanden ist. Wenn Sie sicherstellen, dass kein Problem vorliegt, versuchen Sie es mit den folgenden Methoden, um es zu lösen. 1. Führen Sie Maven->reloadproject aus. Funktion: Importieren Sie das Maven-Paket auf zwei Arten erneut: 1. Wählen Sie die rechte Schaltfläche des Projektverzeichnisses->Maven->reloadproject2

Eine kurze Analyse der Verwendung der Importsyntax im Knoten Eine kurze Analyse der Verwendung der Importsyntax im Knoten Mar 21, 2023 pm 06:53 PM

Node.js unterstützt die Importsyntax. Es handelt sich um einen einfachen Wissenspunkt, der uns jedoch daran erinnern kann, aus Wissensmissverständnissen herauszukommen, der Außenwelt des Wissens mehr Aufmerksamkeit zu schenken und die Grenzen unseres eigenen Wissens ständig zu öffnen.

See all articles