java上传文件到共享文件夹
来源:互联网 发布:js防水涂料刷几遍 编辑:程序博客网 时间:2024/06/06 07:13
今天做到一个需求 是要用Java把文件上传到共享文件夹 下面是一个例子 以后备用
注:用到一个jar包 jcifs-1.3.14.jar
import java.io.BufferedInputStream;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.net.MalformedURLException;import java.net.UnknownHostException;import jcifs.smb.SmbException;import jcifs.smb.SmbFile;import jcifs.smb.SmbFileOutputStream;import jcifs.util.LogStream;public class Smb { private static LogStream log = LogStream.getInstance(); //打印日志 private String url = ""; private SmbFile smbFile = null; private SmbFileOutputStream smbOut = null; private static Smb smb = null; //共享文件协议 public static synchronized Smb getInstance(String url) { if (smb == null) return new Smb(url); return smb; } /** * @param url服务器路径 */ private Smb(String url) { this.url = url; this.init(); } public void init() { try { log.println("开始连接...url:" + this.url); smbFile = new SmbFile(this.url); smbFile.connect(); log.println("连接成功...url:" + this.url); } catch (MalformedURLException e) { e.printStackTrace(); log.print(e); } catch (IOException e) { e.printStackTrace(); log.print(e); } } /** * 上传文件到服务器 */ public int uploadFile(File file) { int flag = -1; BufferedInputStream bf = null; try { 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; log.println("文件传输结束..."); } catch (SmbException e) { e.printStackTrace(); log.println(e); } catch (MalformedURLException e) { e.printStackTrace(); log.println(e); } catch (UnknownHostException e) { e.printStackTrace(); log.println("找不到主机...url:" + this.url); } catch (IOException e) { e.printStackTrace(); log.println(e); } finally { try { if (null != this.smbOut) this.smbOut.close(); if (null != bf) bf.close(); } catch (Exception e2) { e2.printStackTrace(); } } return flag; } public static void main(String[] args) { //服務器地址 格式為 smb://电脑用户名:电脑密码@电脑IP地址/IP共享的文件夹 String remoteUrl = "smb://niu:0908@172.16.51.110/imashare/"; String localFile = "C:/Users/niu/Desktop/all/GFS_170221_093426.txt"; //本地要上传的文件 File file = new File(localFile); Smb smb = Smb.getInstance(remoteUrl); smb.uploadFile(file);// 上传文件 }}
1 0
- java上传文件到共享文件夹
- java上传文件与文件夹到服务器
- Java创建文件夹并上传文件到该文件夹
- Java创建文件夹并上传文件到该文件夹
- delphi 局域网共享文件夹上传文件
- java上传图片到文件夹
- java本地上传图片到阿里云服务器的共享文件夹
- java上传文件到文件夹判断文件夹是否存在,不存在则创建
- <php+mysql>上传文件到指定文件夹,共享数据和脚本,文件验证,脚本之间的通信
- ASP.NET上传图片到共享文件夹内
- 文件上传到服务器某个文件夹
- Git 上传文件、文件夹、项目到 Github
- python mac上传文件到windows共享
- C#向共享文件夹上传及下载文件
- 利用iTunes导入文件到Document文件夹(文件共享)
- Java实现ftp上传文件、文件夹
- Java实现ftp上传文件、文件夹
- Java实现ftp上传文件、文件夹
- Python 学习之数据抓取——淘宝MM数据
- c++ primer 练习 2.11
- Executor框架实例
- 数据结构与算法____八大排序算法
- 服务器负载均衡
- java上传文件到共享文件夹
- ScrollView中添加一个android:fillViewport=true(转)
- mt.exe:general error c101008d(最终原因已查明)
- Java自带的性能监测工具用法简介——jstack、jconsole、jinfo、jmap、jdb、jsta、jvisualvm
- JVM底层如何实现synchronized
- reactjs学习笔记
- oracle普通表转分区表——在线重定义
- Jdk 安装及配置过程
- Retrofit的简单认识