Het lezen van gegevens van en schrijven van gegevens naar een bestand zijn veelvoorkomende taken in de programmering . De programmeertaal Ruby heeft een aantal methoden die het eenvoudig om input van een bestand te maken . Instructies Voer een File 1 Identificeer de bestandsnaam van het bestand dat u wilt en open het . Kopen van 2 Bepaal of u wilt lezen uit het bestand , schrijven naar het bestand of beide . Als u een bestand wilt lezen , pass " r" als tweede argument aan File.open . Als u wilt schrijven , pass " w " . Om beide te doen , passeren " r + " 3 Maak een nieuw bestand object met de File.open methode en het resultaat opslaan in een variabele : . F = File.open ( " mijnbestand . txt " , " r " ) 4 Gebruik een van een aantal methoden voor het lezen en schrijven van het bestand . Aan elke regel lezen in orde is, kunt u gebruik maken van de each_line methode, die een blok neemt als argument , ingesloten in do ... end trefwoorden of { ... } accolades . Een bestand op deze manier lezen is vergelijkbaar met itereren over een array : f = File.open ( " mijnbstnd.txt " , " r" ) f.each_line doen | lijn | puts "Ik las deze regel : # { lijn } " end < br > 5 Lees afzonderlijke strings voor geformatteerde data in een aantal manieren . Na het openen van het bestand met de methode krijgt om een lijn te lezen en bewaar het resultaat in een variabele : f = File.open ( " mijnbstnd.txt " , " r" ) lijn = f.getsputs " De lijn die ik lees is : # { lijn } " Gebruik Shortcuts de 6 Gebruik de snelkoppeling voor de each_line methode , de File.foreach methode . Deze methode opent het bestand en gebruikt each_line zonder dat u het bestand zelf openen . Het sluit ook het bestand als het klaar is : File.foreach ( " myfile.txt " ) do | lijn | puts " Ik lees deze regel : # { lijn } " end 7 Gebruik de readlines methode in situaties waarin het gemakkelijker alle lijnen van het bestand te lezen in een array zijn . De readlines methode retourneert een array van alle lijnen . In het volgende voorbeeld wordt een bestand te openen , lees alle lijnen met readlines , dan itereren over de geretourneerde array en print alle lijnen : f = File.open ( " mijnbstnd.txt " , " r" ) lijnen = f.readlineslines.each do | lijn | puts " ik lees deze regel : # { lijn } " end Sluit de file 8 Sluit het bestand met de nauwe methode . Vergeet niet om de nauwe methode noemen , anders wordt het bestand kan nooit worden gesloten : f = File.open ( " mijnbstnd.txt " , " r" ) # ... Heeft iets met de filef.close 9 Sluit deze automatisch als je niet nodig hebt om het bestand open te houden voor zeer lang . De File.open methode kan een blok nemen als argument . 10 Pass een blok , en het bestand wordt automatisch aan het einde van het blok worden gesloten. File.open zal het resultaat van het blok terug als men doorgegeven als een plaats van een bestandsingang . Blokkeert automatisch het resultaat van hun laatste expressie terug . In dit voorbeeld , File.open geeft het resultaat van de readlines methode , ondanks het feit dat er geen return statement : lijnen = File.open ( " mijnbstnd.txt " , " r" ) do | file | file.readlinesend
|