最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Swift实现FTP客户端的制作(使用Rebekka库)
时间:2015-12-23 编辑:简简单单 来源:一聚教程网
下面介绍如何使用第三方库 Rebekka 来进行FTP客户端的开发,实现的功能包括:FTP服务器连接,文件列表的查询,文件夹创建,上传文件,下载文件。
1,Rebekka的说明与配置
Rebekka是一个用Swift语言写的FTP/FTPS客户端操作库。其内部封装使用的是CFNetworking网络库的CFFTPStream API。
(3)在需要使用的时候 import 即可
import RebekkaTouch
2,初始化连接配置
import UIKit
import RebekkaTouch
class ViewController: UIViewController {
var session: Session!
override func viewDidLoad() {
super.viewDidLoad()
var configuration = SessionConfiguration()
configuration.host = "ftp://ftp.hangge.com"
configuration.username = "ftpuser"
configuration.password = "123456"
session = Session(configuration: configuration)
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
}
3,获取文件、文件夹列表并输出
下面把根目录下的所有文件、文件夹名字打印出来(当然还可以获取到其他信息,比如文件创建者,创建时间等等)
showList("/")
func showList(path: String) {
session.list(path) {
(resources, error) -> Void in
for item in resources!{
print("文件类型:\(item.type) 文件名称:\(item.name)")
}
}
}
4,新建文件夹
createDirectory("/upload/测试文件夹")
func createDirectory(path: String) {
session.createDirectory(path) {
(result, error) -> Void in
if result {
print("文件夹创建成功!")
}else {
print("文件夹创建失败: \(error)")
}
}
}
5,上传文件
func testUploadFile() {
//本地文件
let URL = NSBundle.mainBundle().URLForResource("logo", withExtension: "png")
//服务器路径以及保存的文件名
let path = "/upload/\(NSUUID().UUIDString).png"
//上传文件
session.upload(URL!, path: path) {
(result, error) -> Void in
if result {
print("文件上传成功!")
}else {
print("文件上传失败: \(error)")
}
}
}
6,下载文件
默认下载下来的文件是保存在临时文件夹下并随机命名的。我们可以在下载完毕的回调方法中将其移动到需要的目录(比如用户文档目录)并重命名。
func testDownloadFile() {
self.session.download("/upload/hangge.png") {
(fileURL, error) -> Void in
print("文件保存地址:\(fileURL)")
//下载下来的临时文件,要自行处理
/**
if let fileURL = fileURL {
do {
try NSFileManager.defaultManager().removeItemAtURL(fileURL) //删除临时文件
} catch let error as NSError {
print("Error: \(error)")
}
}**/
}
}
-
上一个: 合众钱包无法注册问题解决办法
相关文章
- 中国8u在发布8uftp客户端之后再免费开放服务端 04-24
- Ftp客户端编程 01-12
- sora软件价格介绍 02-22
- sora官网入口地址一览 02-22
- Sora生成的视频使用教程 02-22
- 《梦幻西游》元宵灯谜线索答案大全2024 02-22