📚 Foundationとは?

Foundation は、日付・文字列・配列・辞書・ファイル操作・URL通信など、アプリケーションでよく使われる基本的な処理を提供するApple純正のライブラリです。


…読み込み中…

📌 主な用途

🕒 日付を扱う

let now = Date()
let formatter = DateFormatter()
formatter.dateStyle = .medium
formatter.timeStyle = .short

print("現在日時: \(formatter.string(from: now))")

このコードでは、現在の日付と時刻を取得し、指定したフォーマットで文字列に変換して表示しています。`DateFormatter`を使うことで、日付のスタイルや時刻のスタイルを簡単に設定できます。

Date | DateFormatter

🌐 URLSessionでAPIを叩く

let url = URL(string: "https://api.example.com/data")!
let task = URLSession.shared.dataTask(with: url) { data, response, error in
    if let data = data {
        print(String(data: data, encoding: .utf8) ?? "データなし")
    }
}
task.resume()

このコードでは、指定したURLに対してGETリクエストを送り、取得したデータをコンソールに表示しています。`URLSession`を使うことで、非同期でネットワーク通信を行うことができます。

URLSession

🗂 ファイルの保存と読み込み

let text = "Hello, world!"
let fileURL = FileManager.default.temporaryDirectory.appendingPathComponent("sample.txt")

do {
    try text.write(to: fileURL, atomically: true, encoding: .utf8)
    let read = try String(contentsOf: fileURL)
    print("読み込んだ文字列: \(read)")
} catch {
    print("エラー: \(error)")
}

このコードでは、一時ディレクトリにテキストファイルを保存し、再度読み込んで表示しています。`FileManager`を使うことで、ファイルの作成や読み書きが簡単に行えます。

FileManager

🧠 CodableでJSONを扱う

struct User: Codable {
  var name: String
  var age: Int
}

let json = """
{ "name": "太郎", "age": 25 }
""".data(using: .utf8)!

let decoder = JSONDecoder()
let user = try! decoder.decode(User.self, from: json)
print(user.name) // 太郎

このコードでは、`Codable`プロトコルを使ってJSONデータをSwiftの構造体に変換しています。`JSONDecoder`を使うことで、簡単にデータのエンコード/デコードが可能です。

Codable

🔗 関連リンク