Een tijdelijk bestand aanmaken

Swift:
Een tijdelijk bestand aanmaken

Hoe doe je dat:

Swift maakt het vrij eenvoudig om tijdelijke bestanden te creëren, met behulp van de FileManager klasse. Hier is hoe je snel een tijdelijk bestand maakt en er wat tekst in schrijft:

import Foundation

// Creëer een URL voor de tijdelijke map
let tempDirectoryURL = FileManager.default.temporaryDirectory

// Creëer een unieke bestandsnaam
let fileName = UUID().uuidString

// Construeer de volledige bestands-URL
let fileURL = tempDirectoryURL.appendingPathComponent(fileName)

// Voorbeeldtekst om te schrijven
let sampleText = "Hello, temporary world!"

do {
    // Schrijf de tekst naar het tijdelijke bestand
    try sampleText.write(to: fileURL, atomically: true, encoding: .utf8)
    print("Bestand gecreëerd: \(fileURL)")
} catch {
    print("Mislukt om naar bestand te schrijven: \(error)")
}

// Voorbeelduitvoer:
// Bestand gecreëerd: file:///pad/naar/temp/map/E0B4952E-5BEE-47E7-B5BB-DA5E6AF1EDC9

Om het bestand te lezen, draai je het script gewoon om—hier is hoe:

do {
    // Lees de tekst van het tijdelijke bestand
    let savedText = try String(contentsOf: fileURL, encoding: .utf8)
    print("Bestandsinhoud: \(savedText)")
} catch {
    print("Mislukt om bestand te lezen: \(error)")
}

// Voorbeelduitvoer:
// Bestandsinhoud: Hello, temporary world!

Ruim na jezelf op door het temp bestand te verwijderen:

do {
    // Verwijder het tijdelijke bestand
    try FileManager.default.removeItem(at: fileURL)
    print("Tijdelijk bestand verwijderd.")
} catch {
    print("Mislukt om bestand te verwijderen: \(error)")
}

// Voorbeelduitvoer:
// Tijdelijk bestand verwijderd.

Diepere Duik

Voor FileManager, beheerden mensen bestanden op meer omslachtige manieren. Herinner je C’s tmpfile()? In vergelijking is Swift’s FileManager een verademing: eenvoudig en modern.

Alternatieven? Zeker. Je zou in-memory representaties zoals Data of String kunnen gebruiken, perfect voor echt tijdelijke data met beperkte grootte. Een andere route is het gebruik van een aangepaste temp-bestandsmanager voor meer controle, maar dat is meestal overbodig.

De kern van de zaak: FileManager gebruikt de systeem’s temp directory, die af en toe wordt opgeschoond, maar niet na elke programma-uitvoer. Houd dat in gedachten als het gaat om veiligheid of gevoelige gegevens - ruim handmatig op indien nodig.

Zie Ook

Bekijk deze bronnen voor meer informatie over het omgaan met bestanden in Swift: