java如何访问局域网共享文件?

java如何访问局域网共享文件?,第1张

java访问共享文件夹,读取局域网中一台机器的共穗悔享目录中的文件,需要jcifs-1.1.11.jar的支持,使用SMB协议,以宴明下是实现了远程读取文件的功能代码:

package junit

import jcifs.smb.SmbFile

/**   

 * java访问局域网共享目录

 *

 * @author administrator

 * @version 1.0 2015-7-6 猜祥正

 */

public class SmbTest {

    public static void main(String[] args) throws Exception {

        //smb://xxx:xxx@192.168.2.188/testIndex/  

        //xxx:xxx是共享机器的用户名密码

        String url="smb://192.168.2.188/testIndex/"

        SmbFile file = new SmbFile(url)

        if(file.exists()){

            SmbFile[] files = file.listFiles()

            for(SmbFile f : files){

                System.out.println(f.getName())

            }

        }

    }

}

通过SMB协议从LINUX机器喊旅上移动文件到本地,而不更或改改其创建时间,更改时间等属性.

从郑团凳共享目录下载文件

public static 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()

}

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12199954.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存