在java程序中访问windows有用户名和密码保护的共享目录
但是要访问一个需要用户和密码验证的目录就需要一点点小技巧了。
这里介绍一个开源的库能够比较容易的实现这一需求。
1。 下载库文件:
下载的zip文件中, 不仅包含了jar文件,还有文档和示例。
2。拷贝jcif-1.3.18.jar到类路径中。
3。代码示例:
2 String pass ="your_pass_word";
3
4 String sharedFolder="shared";
5 String path="smb://ip_address/"+sharedFolder+"/test.txt";
6 NtlmPasswordAuthentication auth = new NtlmPasswordAuthentication("",user, pass);
7 SmbFile smbFile = new SmbFile(path,auth);
8 SmbFileOutputStream smbfos = new SmbFileOutputStream(smbFile);
9 smbfos.write("testing
.and writing to a file".getBytes());10 System.out.println("completed
nice !");说明: 如果有一个共享目录,比如: \\192.168.1.2\testdir\
那么smb的路径就是:smb://192.168.1.2/testdir/
得到SmbFile之后,操作就和java.io.File基本一样了。
另外还有一些功能比如:
SmbFile.copyTo
SmbFile.renameTo
等等
在java程序中访问windows有用户名和密码保护的共享目录的更多相关文章
- 在Java程序中读写windows共享文件夹
摘要 使用Java通过JCIFS框架读写共享文件夹,使用SMB协议,并支持域认证. 项目常常需要有访问共享文件夹的需求,例如读取共享文件夹存储的视频.照片和PPT等文件.那么如何使用Java读写Win ...
- java程序中访问https时,报 PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
在java中使用https访问数据时报异常: Caused by: sun.security.validator.ValidatorException: PKIX path building fail ...
- Linux上从Java程序中调用C函数
原则上来说,"100%纯Java"的解决方法是最好的,但有些情况下必须使用本地方法.特别是在以下三种情况: 需要访问Java平台无法访问的系统特性和设备: 通过基准测试,发现Jav ...
- Fastreport使用经验(转)在Delphi程序中访问报表对象
Fastreport使用经验(转) 在Delphi程序中访问报表对象 最基本的方法就是frxReport1.FindObject. 然后把返回的对象强制转换成它的类型,当然,在报表中必须真的有这么个东 ...
- Silverlight程序中访问配置文件
以下代码为本人在一Silverlight程序中访问Web端配置文件的代码: private void GetLoadNeed() { // 项目名称读取配置文件 WebClient wcConfigX ...
- java程序中获取kerberos登陆hadoop
本文由作者周梁伟授权网易云社区发布. 一般我们在使用kbs登陆hadoop服务时都直接在shell中调用kinit命令来获取凭证,这种方式简单直接,只要获取一次凭证之后都可以在该会话过程中重复访问.但 ...
- Java程序中解决数据库超时与死锁
Java程序中解决数据库超时与死锁 2011-06-07 11:09 佚名 帮考网 字号:T | T Java程序中解决数据库超时与死锁,每个使用关系型数据库的程序都可能遇到数据死锁或不可用的情况 ...
- 在java程序中使用JDBC连接mysql数据库
在java程序中我们时常会用到数据库中的数据或操作数据库中的数据,如果java程序没有和我们得数据库连接,就不能实现在java程序中直接操作数据库.使用jdbc就能将java程序和数据库连起来,此时我 ...
- java程序,在windows下设置为开机自启动
1.制作可运行jar包 2.设置开机自动,后台运行,确保不关 一下这几个方法是我试过的,由于有不同的问题,以后慢慢总结 (1).制作bat文件,放在"启动"里面 (2).设置组策略 ...
随机推荐
- oracle窗口函数中range interval的使用
oracle窗口函数中range interval配合一般用来针对指定时间范围进行统计.其中range表示范围,between...and 表示之前的范围和之后的范围 , CURRENT ROW表示当 ...
- python之方法总结
python的OOP的方法有3种: 1. 实例方法: 接收self参数 2. 类方法: 接收cls参数, 并要用classmethod()注册或者@classmethod注解. 3. 静态方法: 不接 ...
- 应用层HTTP,FTP,TFTP,TELNET,DNS,EMAIL
ip路由选择 crc校验 数据包转发子模块 ttl值 ip输出队列/输入队列icmp报文 路由表 ip是网络层 tcp是传输层 应用层表示层会话层传输层网络层链路层物理层 网卡工作在链路层 网卡是工作 ...
- thinkphp通行证服务,验证登录,注销登录
<?php /** * 通行证服务 */ class PassportService extends Service { /** * 验证用户或者管理员是否已登录 * @return boole ...
- Install mcrypt for php on Mac OSX 10.10 Yosemite for a Development Server
mcrypt is a file encryption method using secure techniques to exchange data. It is required for some ...
- 微软职位内部推荐-Senior SDE for Windows App Experience
微软近期Open的职位: Job posting title: Senior Software Development Engineer Location: China, Beijing Divisi ...
- Bluetooth
Android provides a default Bluetooth stack, BlueDroid, that is divided into two layers: The Bluetoot ...
- Hadoop启动异常情况解决方案
1. 启动时报WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using b ...
- ADO.NET- 基础总结及实例介绍
最近闲暇时间写的一些小程序中,访问数据库比较多:下面主要介绍下ADO.NET方面知识,有不足之处,希望大神们不吝赐教: 提到ADO.NET,经常会和ASP.NET进行混淆,两者的区别很大,没有可比性, ...
- HDOJ 3547 DIY Cube 解题报告
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3547 题目大意:求用$C$种颜色给立方体的8个顶点染色的本质不同的方法.两种方法本质不同即不能通过旋转 ...