この例では、Javaの特定のコードを共有して、参照のためにサーバーにファイルをリモートで送信します。特定のコンテンツは次のとおりです
1。関連JARパッケージJCIFS-1.3.14.1.jar
2。SMBの宣言を作成します
java.io.bufferedinputStreamをインポートします。 java.io.fileをインポートします。 java.io.fileinputStreamをインポートします。 java.io.ioexceptionをインポートします。 java.net.malformedurlexceptionをインポートします。 java.net.unknownhostexceptionをインポートします。 jcifs.smb.smbexceptionをインポートします。 jcifs.smb.smbfileをインポートします。 jcifs.smb.smbfileoutputStreamをインポートします。 public class smbutil {//1。プロパティプライベート文字列url = "smb:// username:[email protected]/mars/"; private smbfile smbfile = null; private smbfileoutputStream smbout = null; private static smbutil smbutil = null; //共有ファイルプロトコルprivate smbutil(string url){this.url = url; this.init(); } // 2。smbutilと接続方法を取得しますpublic static synchronized smbutil getInstance(string url){if(smbutil == null)return new smbutil(url); smbutilを返します。 } // 3.SmbFile接続public void init(){try {system.out.println( "start connection ... url:" + this.url); smbfile = new smbfile(this.url); smbfile.connect(); System.out.println( "接続成功... url:" + this.url); } catch(malformedurlexception e){e.printstacktrace(); System.out.print(e); } catch(ioexception e){e.printstacktrace(); System.out.print(e); }} // 4。ファイルをサーバーにアップロードしますpublic int uploadfile(file file){int flag = -1; bufferedinputStream bf = null; try {this.smbout = new smbfileoutputStream(this.url + "/" + file.getName()、false); BF = new BufferedInputStream(new FileInputStream(file)); byte [] bt = new byte [8192]; int n = bf.read(bt); while(n!= -1){this.smbout.write(bt、0、n); this.smbout.flush(); n = bf.read(bt); } flag = 0; system.out.println( "ファイル転送終了..."); } catch(smbexception e){e.printstacktrace(); System.out.println(e); } catch(malformedurlexception e){e.printstacktrace(); System.out.println(e); } catch(unknownhostexception e){e.printstacktrace(); System.out.println(e); } catch(unknownhostexception e){e.printstacktrace(); system.out.println( "ホストが見つかりません... url:" + this.url); } catch(ioexception e){e.printstacktrace(); System.out.println(e); }最後に{try {if(null!= this.smbout)this.smbout.close(); if(null!= bf)bf.close(); } catch(例外E2){e2.printstacktrace(); }} return flag; } //5。publicstatic void main(string [] args){// serverアドレス形式smb:// computer password@computer@computer ip address/ip shared folder string remoteurl = "smb:// wangqinghua:[email protected]/mars/"; string localfile = "f:/switch production and Sales Enterprise Directory.xls"; //アップロードされるローカルファイルファイル= new File(localFile); smbutil smb = smbutil.getInstance(remoteurl); smb.uploadfile(file); // file}}}注意すべきこと:
上記はLANに基づいており、ファイルをアップロードするディレクトリまたはフォルダーを共有モードに設定する必要があります。
上記はこの記事のすべての内容です。みんなの学習に役立つことを願っています。誰もがwulin.comをもっとサポートすることを願っています。