Een tijdelijk bestand aanmaken

Ruby:
Een tijdelijk bestand aanmaken

Hoe:

De standaardbibliotheek van Ruby biedt Tempfile voor het maken van tijdelijke bestanden. Laten we er direct induiken:

require 'tempfile'

Tempfile.create('my_temp') do |tempfile|
  tempfile.write('Tijdelijke inhoud')
  puts "Tijdelijk bestand bevindt zich op: #{tempfile.path}"
end
# Na het blok wordt het bestand automatisch verwijderd.

Zodra je dit uitvoert, zie je:

Tijdelijk bestand bevindt zich op: /tmp/my_temp20180418-56789-1234567

Dit bestand blijft niet langer dan nodig. Zodra het blok eindigt, ruimt Ruby voor je op.

Uitdieping

De Tempfile-klasse bestaat al sinds Ruby 1.8 en is in de loop van de tijd geoefend en verfijnd. Onder de motorkap gebruikt het het tijdelijke bestandspad van je systeem, aangeboden door het besturingssysteem.

Alternatieven? Zeker, je zou handmatig tijdelijke bestanden kunnen maken en bijhouden, maar waarom het wiel opnieuw uitvinden? Tempfile geeft je een willekeurige, unieke bestandsnaam, waardoor het risico op botsingen vermindert.

Voor degenen die meer controle verlangen, neemt de methode Tempfile.new parameters voor het aanpassen van de bestandsnaam en locatie. Maar onthoud, met grote macht komt grote verantwoordelijkheid - je zult deze bestanden handmatig moeten verwijderen.

Het echte voordeel van het gebruik van Tempfile ligt in zijn thread-safe en garbage-collected natuur. Het sluit het bestand af en zorgt ervoor dat gevoelige gegevens niet langer blijven dan zou moeten. Een tijdelijk bestand gedraagt zich veel als een standaardbestandsobject, dus je kunt het lezen, naar schrijven en anderszins manipuleren met behulp van typische bestandsbewerkingen.

Zie Ook

  • Ruby API Dock voor diepere Tempfile-gebruiksvoorbeelden: API Dock Tempfile
  • Gids voor Ruby-bestands-I/O voor meer over het afhandelen van bestanden: Bestands-I/O