こんにちは、iOSエンジニアのちぎらです。 SwiftでStructのデータを永続化したい時、どうしたらいいでしょう。Classに書き換えてNSCodingに準拠させればNSDataに変換できます。でもStructは使いたいしなんか悔しいですね。Structが保持している変数をそれぞれバイト列にして繋げてしまって一つのデータにするという方法があります。方法としてはこれでいいですが、NSCodingに準拠させるよりもはるかに頭を使うし、もっと簡単にできないものでしょうか...。 StructとNSDataを相互変換するライブラリを作りました。 github.com 使い方 1. Struct を定義する // CustomArchivable プロトコルを指定 struct SampleStruct: CustomArchivable { let title: String let time