博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JAVA从局域网共享文件夹中下载上传文件以及java访问共享文件夹
阅读量:4946 次
发布时间:2019-06-11

本文共 3957 字,大约阅读时间需要 13 分钟。

1 package com.xx.test;  2   3   4 import java.io.BufferedInputStream;  5 import java.io.BufferedOutputStream;  6 import java.io.File;  7 import java.io.FileInputStream;  8 import java.io.FileOutputStream;  9 import java.io.IOException; 10 import java.io.InputStream; 11 import java.io.OutputStream; 12 import jcifs.smb.SmbFile; 13 import jcifs.smb.SmbFileInputStream; 14 import jcifs.smb.SmbFileOutputStream; 15  16 /**    17  * java访问共享目录 18  * 19  * @author 林计钦 20  * @version 1.0 2013-7-16 上午09:18:38    21  */ 22 public class test02 { 23  24     public static void main(String[] args) throws Exception { 25         //smb://xxx:xxx@192.168.2.188/testIndex/   26         //xxx:xxx是共享机器的用户名密码 27         String url="smb://C1307890:Ivo123@10.20.2.33/CIMPublic/"; 28         SmbFile file = new SmbFile(url); 29         if(file.exists()){ 30             SmbFile[] files = file.listFiles(); 31             for(SmbFile f : files){ 32                 System.out.println(f.getName()); 33             } 34         } 35          36         smbGet("smb://C1307890:Ivo123@10.20.2.33/CIMPublic/02 MES/SPC/Spc_Check_IVO_V1_00.ppt", "D:/ap_log"); 37         smbPut("smb://C1307890:Ivo123@10.20.2.33/CIMPublic/", "D:/qra/fileUpload/SQL_JOIN.pptx"); 38          39     } 40      41 //    从共享目录下载文件    42     @SuppressWarnings("unused") 43     public static void smbGet(String remoteUrl,String localDir) {        44        InputStream in = null;        45        OutputStream out = null;        46        try {        47            SmbFile remoteFile = new SmbFile(remoteUrl);        48            if(remoteFile==null){        49               System.out.println("共享文件不存在");        50               return;        51            }        52            String fileName = remoteFile.getName();        53            File localFile = new File(localDir+File.separator+fileName);        54            in = new BufferedInputStream(new SmbFileInputStream(remoteFile));        55            out = new BufferedOutputStream(new FileOutputStream(localFile));           56            byte[] buffer = new byte[1024];        57            while(in.read(buffer)!=-1){        58               out.write(buffer);        59               buffer = new byte[1024];        60            }        61        } catch (Exception e) {        62            e.printStackTrace();        63        } finally {        64            try {        65               out.close();        66               in.close();        67            } catch (IOException e) {        68               e.printStackTrace();        69            }        70        }        71     }   72      73    //向共享目录上传文件      74     public static void smbPut(String remoteUrl,String localFilePath) {        75        InputStream in = null;        76        OutputStream out = null;        77        try {        78            File localFile = new File(localFilePath);        79                   80            String fileName = localFile.getName();        81            SmbFile remoteFile = new SmbFile(remoteUrl+"/"+fileName);        82            in = new BufferedInputStream(new FileInputStream(localFile));           83            out = new BufferedOutputStream(new SmbFileOutputStream(remoteFile));        84            byte[] buffer = new byte[1024];        85            while(in.read(buffer)!=-1){        86               out.write(buffer);        87               buffer = new byte[1024];        88            }        89        } catch (Exception e) {        90            e.printStackTrace();        91        } finally {        92            try {        93               out.close();        94               in.close();        95            } catch (IOException e) {        96               e.printStackTrace();        97            }        98        }        99     }   100     101 }

 远程url     smb://192.168.0.77/test如果需要用户名密码就这样:

smb://username:password@192.168.0.77/test

转载于:https://www.cnblogs.com/tianhyapply/p/3721381.html

你可能感兴趣的文章
<metro>Google的验证
查看>>
Oracle 表的分组操作
查看>>
在OS X上的Intllij Idea中配置GlassFish
查看>>
用查表法快速转换yv12到RGB【转】
查看>>
使用公钥登录SSL
查看>>
hdu 1290_献给杭电五十周年校庆的礼物
查看>>
豆瓣电影api
查看>>
BufferedInputStream和FileInputStream的区别
查看>>
likely() 和 unlikely()
查看>>
03一些View总结
查看>>
MapReduce--平均分,最高,低分以及及格率的计算
查看>>
mac下管理论文的工具
查看>>
14-6-27&28自学内容小结
查看>>
JSP
查看>>
---
查看>>
(第一组_GNS3)自反ACl
查看>>
hdu--1258--Sum It Up(Map水过)
查看>>
Spring @DeclareParents 的扩展应用实例
查看>>
VS2012更新Update1后帮助查看器无法打开
查看>>
Android 文件的读取和写入
查看>>