如何使用 swift 从 ftp 服务器下载文件
Howto download file from ftp server using swift
您好,我尝试从 ftp 服务器下载 XML 文件,但 CFRreadStreamRead 函数出现问题。因为我不知道应该将什么设置为“_ buffer: UnsafeMutablePointer”参数。我从 apple documentation 获得此功能 在下面的代码中,您可以看到我目前是如何尝试的。我希望你能帮助我。
public func openFTPConnection()
{
var url: CFStringRef
url = "Test" as NSString
var requestURL: CFURLRef
requestURL = CFURLCreateWithString(kCFAllocatorDefault, url, nil);
let ftpStream = CFReadStreamCreateWithFTPURL(kCFAllocatorDefault, requestURL).takeRetainedValue()
var state = CFReadStreamOpen(ftpStream)
if state == 0
{
println("Fehler beim verbinden")
}
else
{
println("Verbindung erfolgreich")
}
var numBytesRead = 0
var bufSize = 4096
var buf = [UInt8](count: bufSize, repeatedValue: 0)
do
{
numBytesRead = CFReadStreamRead(ftpStream, buf, bufSize)
}
while( numBytesRead > 0 );
CFReadStreamClose(ftpStream)
}
对于一个UnsafeMutablePointer<Type>
参数,可以传递一个[Type]
数组
作为 "inout value" 通过 &
(作为指向数组开头的指针传递):
numBytesRead = CFReadStreamRead(ftpStream, &buf, bufSize)
有关详细信息,请参阅 Interacting with C APIs
"Using Swift with Cocoa and Objective-C" 文档。
您好,我尝试从 ftp 服务器下载 XML 文件,但 CFRreadStreamRead 函数出现问题。因为我不知道应该将什么设置为“_ buffer: UnsafeMutablePointer”参数。我从 apple documentation 获得此功能 在下面的代码中,您可以看到我目前是如何尝试的。我希望你能帮助我。
public func openFTPConnection()
{
var url: CFStringRef
url = "Test" as NSString
var requestURL: CFURLRef
requestURL = CFURLCreateWithString(kCFAllocatorDefault, url, nil);
let ftpStream = CFReadStreamCreateWithFTPURL(kCFAllocatorDefault, requestURL).takeRetainedValue()
var state = CFReadStreamOpen(ftpStream)
if state == 0
{
println("Fehler beim verbinden")
}
else
{
println("Verbindung erfolgreich")
}
var numBytesRead = 0
var bufSize = 4096
var buf = [UInt8](count: bufSize, repeatedValue: 0)
do
{
numBytesRead = CFReadStreamRead(ftpStream, buf, bufSize)
}
while( numBytesRead > 0 );
CFReadStreamClose(ftpStream)
}
对于一个UnsafeMutablePointer<Type>
参数,可以传递一个[Type]
数组
作为 "inout value" 通过 &
(作为指向数组开头的指针传递):
numBytesRead = CFReadStreamRead(ftpStream, &buf, bufSize)
有关详细信息,请参阅 Interacting with C APIs "Using Swift with Cocoa and Objective-C" 文档。