SwiftのFTPでファイルデータを更新する。SwiftのFTPでファイルデータを更新する。2018-09-30SwiftのFTPでファイルデータを更新する。Swiftこの記事は2018年09月30日に投稿しました。はじめにこんにちは、iOSのエディタアプリPWEditorの開発者の二俣です。今回はSwiftのFTPでファイルデータを更新してみます。PWEditorでは、SwiftでFTPを操作するため、BlackRaccoonライブラリを使用しています。下記の記事を参考にBlackRaccoonライブラリを使用できる状態にしておいてください。ファイルデータ更新処理SwiftのFTPでファイルのデータを更新には、BlackRaccoonライブラリのFTPアップロード(BRRequestUpload)オブジェクトを使用します。以下に手順を示します。FTPファイルデータを更新するViewControllerにBRReqeuestDelegateを設定します。FTPファイルデータ更新を行うFTPアップロード(BRRequestUpload)オブジェクトをインスタンス変数で用意します。更新するファイルデータを設定するData型のインスタンス変数も用意します。FTPアップロード(BRRequestUpload)オブジェクトを生成し、FTPで接続するパラメータ(ホスト名、ユーザ名、パスワード、パス名)を設定します。ホスト名は、IPアドレス形式またはURL形式で指定可能です。ホスト名、ユーザ名、パスワードに使用できる文字は1バイト文字のみです。2バイト文字の場合、クラッシュします。パス名は、ルートディレクトリの場合は"/"、サブディレクトリの場合は"/<サブディレクトリ名>"を指定します。FTPアップロード(BRRequestUpload)オブジェクトのstartメソッドを実行し、ファイルデータ更新を開始します。ファイルデータ更新の結果は、以下のメソッドでコールバックされます。正常な場合はrequestCompletedメソッドエラーの場合はrequestFaildメソッドファイルの更新許可を判定する場合はshouldOverwriteFileWithRequestメソッドファイルデータをアップロードする場合はrequestDataメソッドrequestDataメソッドを除くコールバックメソッドはドキュメントをみるとわかるように、他のファイル操作を行った場合も呼び出されます。そのため引数requestがFTPアップロード(BRRequestUpload)オブジェクトと等しいかチェックして、FTPファイルデータ更新処理の結果としてコールバックメソッドが呼び出されたか判断しています。shouldOverwriteFileWithRequestメソッドは、おそらくFTPアップロードの時にだけ必要なメソッドで、既存のファイルを上書きしてよいかどうかを返却します。そのためFTPアップロードの時はtrue、それ以外はfalseを返却するようにしています。ファイルの更新を許可しない仕様であれば、FTPアップロード時もfalseを返却するようにすればよいと思います。最後に2重起動防止のため、FTPアップロード(BRRequestUpload)オブジェクトをnilでクリアします。FTPでファイルデータの更新を開始します。FTPアップロードオブジェクトが有効な場合、2重起動防止のため処理を終了します。FTPアップロードオブジェクトを生成し、FTPで接続するパラメータを設定します。更新するファイルデータをインスタンス変数に設定します。ファイルデータ更新を開始します。FTPのリクエストが完了した時に呼び出されます。正常終了の場合の処理を記述してください。2重起動防止のため、FTPアップロードオブジェクトをクリアします。FTPリクエストがエラーした時に呼び出されます。エラー終了の場合の処理を記述してください。2重起動防止のため、FTPアップロードオブジェクトをクリアします。上書きリクエスト時に呼び出されます。上記以外、上書きを禁止します。ファイルデータを送信します。おわりに手順としてはpaveway.hatenablog.comとほぼ一緒です。見る紹介している一部の記事のコードはGitlabで公開しています。興味のある方は覗いてみてください。目次へ私が勤務しているニューラルでは、主に組み込み系ソフトの開発を行っております。Bi-OSは高い技術力を評価されており、特に制御系や通信系を得意としています。私自身はiOSモバイルアプリやウィンドウズアプリを得意としております。ソフトウェア開発に関して相談などございましたら、お気軽にご連絡ください。一緒に働きたい技術者の方も随時募集中です。興味がありましたらご連絡ください。06:21SwiftのFTPでファイルデータを更新する。Tweet関連記事2018-09-29SwiftのFTPでファイルデータを取得する。この記事は2018年09月29日に投稿しました。この記事は2018年09...2018-09-27SwiftのFTPでファイルを作成する。この記事は2018年09月27日に投稿しました。この記事は2018年09...2018-07-14SwiftのiCloudでファイルデータを取得する。この記事は2018年07月14日に投稿しました。この記事は2018年07...2018-07-12SwiftのiCloudでファイルを作成する。この記事は2018年07月12日に投稿しました。APIでファイルをリネームする。この記事は2018年07月07日に投稿しました。SwiftのFTPでファイルを削除する。SwiftのFTPでファイルデータを取得する。(3)スターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。