ftp下面文件夹java表示_文件夹下载为ftp中的文件

因此,在我的powershell脚本启动时,它会轮询一个ftp服务器并下载不在本地文件夹中的任何文件 . 问题是,当它到达文件夹时,它将它们作为文件下载 . 这是我检查新文件的代码:

$LocFolder = 'C:\EMSDropBox\*'

Remove-Item $LocFolder

$ftprequest = [System.Net.FtpWebRequest]::Create("ftp://NZHQFTP1/tbarnes")

$ftprequest.Proxy = $null

$ftprequest.KeepAlive = $false

$ftprequest.TimeOut = 10000000

$ftprequest.UsePassive = $False

$ftprequest.Credentials = New-Object System.Net.NetworkCredential("tbarnes", "Static_flow2290")

$ftprequest.Method = [System.Net.WebRequestMethods+Ftp]::ListDirectory

$FTPResponse = $ftprequest.GetResponse()

$ResponseStream = $FTPResponse.GetResponseStream()

$FTPReader = New-Object System.IO.Streamreader($ResponseStream)

$filename = $FTPReader.ReadLine()

while($filename -ne $null)

{

try

{

if((Test-Path ("C:\emsdropbox\"+$filename)) -ne $true)

{

downloadFtp($filename)

}

$filename = $FTPReader.ReadLine()

}

catch

{

Write-Host $_

}

}

$FTPReader.Close()

$FTPResponse.Close()

$ResponseStream.Close()

这是downloadFtp函数:

# FTP Config

$FTPHost = "****"

$Username = "******"

$Password = "*********"

$FTPFile = $file

# FTP Log File Url

$FTPFileUrl = "ftp://" + $FTPHost + "/tbarnes/" + $FTPFile

# Create FTP Connection

$FTPRequest = [System.Net.FtpWebRequest]::Create("$FTPFileUrl")

$FTPRequest.Credentials = New-Object System.Net.NetworkCredential($Username, $Password)

$FTPRequest.Method = [System.Net.WebRequestMethods+Ftp]::DownloadFile

$FTPRequest.UsePassive = $false

$FTPRequest.UseBinary = $true

$FTPRequest.KeepAlive = $false

$targetfile = New-Object IO.FileStream (("C:\emsdropbox\"+$file),[IO.FileMode]::Create)

# Get FTP File

$FTPResponse = $FTPRequest.GetResponse()

$ResponseStream = $FTPResponse.GetResponseStream()

$FTPReader = New-Object -typename System.IO.StreamReader -ArgumentList $ResponseStream

[byte[]]$readbuffer = New-Object byte[] 1024

#loop through the download stream and send the data to the target file

do{

$readlength = $ResponseStream.Read($readbuffer,0,1024)

$targetfile.Write($readbuffer,0,$readlength)

}

while ($readlength -ne 0)

$FTPReader.Close()

我不知道为什么它不会把它们作为文件夹拉下来所以任何帮助或指针都会很棒!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值