Opening with 'w' erases existing content and writes new content.
Step 2: Analyze the code output
The file is overwritten with "World" and then read back, so output is "World" with a newline.
Final Answer:
World
-> Option C
Quick Check:
'w' erases old content, so output is new content with newline [OK]
Hint: Writing with 'w' erases old content, so only new text shows [OK]
Common Mistakes:
Thinking 'w' appends instead of overwriting
Expecting old content to remain
Confusing output with combined old and new text
4. The following Ruby code is intended to add the line "Goodbye" to the end of log.txt. What is the error?
File.open('log.txt', 'w') do |file|
file.puts 'Goodbye'
end
medium
A. The file name should be in double quotes, not single quotes.
B. Using 'w' mode erases the file instead of appending.
C. Missing a block parameter for the file object.
D. The method 'puts' cannot be used inside File.open.
Solution
Step 1: Identify the mode used
The code uses 'w' mode which overwrites the file content.
Step 2: Understand the intended action
To add content without erasing, 'a' mode should be used instead of 'w'.
Final Answer:
Using 'w' mode erases the file instead of appending. -> Option B
Quick Check:
Append needs 'a', not 'w' [OK]
Hint: Use 'a' to add lines, 'w' erases file [OK]
Common Mistakes:
Confusing 'w' with append mode
Thinking 'w' adds content without erasing
Believing quotes style affects file opening
5. You want to create a Ruby script that reads a file notes.txt, appends the line "New note added", and then reads the updated content to print it. Which sequence of file modes should you use?
hard
A. Open with 'r' to read, then 'a' to append, then 'r' to read again.
B. Open with 'a' to append, then 'r' to read the updated content.
C. Open with 'w' to write, then 'a' to append, then 'r' to read.
D. Open with 'r' to read, then 'w' to write, then 'r' to read again.
Solution
Step 1: Read the original file
Use 'r' mode to read the existing content without changing it.
Step 2: Append the new line
Use 'a' mode to add "New note added" at the end without erasing.
Step 3: Read the updated content
Open again with 'r' mode to read and print the updated file content.
Final Answer:
Open with 'r' to read, then 'a' to append, then 'r' to read again. -> Option A
Quick Check:
Read, append, read = 'r', 'a', 'r' [OK]
Hint: Read first, append with 'a', then read again [OK]
Common Mistakes:
Using 'w' which erases content before appending
Trying to append before reading original content
Not reopening file to read updated content
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.