Jump into concepts and practice - no test required
or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is the purpose of the File.Exists method in C#?
The File.Exists method checks if a file exists at a specified path and returns true if it does, otherwise false.
Click to reveal answer
beginner
How does File.ReadAllText work?
It reads all the text from a file at a given path and returns it as a single string.
Click to reveal answer
beginner
What does File.WriteAllText do?
It creates a new file or overwrites an existing file with the specified text content.
Click to reveal answer
beginner
Explain the use of File.Delete.
The File.Delete method removes a file from the file system at the specified path if it exists.
Click to reveal answer
intermediate
What does File.Copy do and what important parameter does it have?
It copies a file from a source path to a destination path. It has an optional parameter to specify whether to overwrite the destination file if it already exists.
Click to reveal answer
Which File method reads all lines from a file into a string array?
AFile.ReadAllText
BFile.ReadAllLines
CFile.WriteAllText
DFile.Exists
✗ Incorrect
File.ReadAllLines reads each line of a file into an array of strings.
What does File.Exists return if the file does not exist?
Athrows an exception
Btrue
Cnull
Dfalse
✗ Incorrect
File.Exists returns false if the file is not found.
Which method would you use to overwrite a file with new text content?
AFile.WriteAllText
BFile.Delete
CFile.Copy
DFile.ReadAllText
✗ Incorrect
File.WriteAllText creates or overwrites a file with the given text.
What happens if you call File.Delete on a file that does not exist?
ADoes nothing
BThrows an exception
CCreates a new file
DReturns false
✗ Incorrect
File.Delete does nothing if the file is not found; it does not throw an error.
Which parameter in File.Copy controls overwriting the destination file?
Aappend (bool)
BbufferSize (int)
Coverwrite (bool)
Drecursive (bool)
✗ Incorrect
The overwrite boolean parameter specifies if the destination file should be overwritten.
Describe how you would check if a file exists and then read its entire content using File class static methods.
Think about checking first to avoid errors.
You got /3 concepts.
Explain the difference between File.WriteAllText and File.AppendAllText.
Consider what happens to existing file content.
You got /3 concepts.
Practice
(1/5)
1. Which of the following File class static methods checks if a file exists at a given path?
easy
A. File.Exists(path)
B. File.ReadAllText(path)
C. File.Delete(path)
D. File.Copy(source, destination)
Solution
Step 1: Understand the purpose of each method
File.Exists(path) checks if the file is present. File.ReadAllText(path) reads file content. File.Delete(path) deletes a file. File.Copy(source, destination) copies a file.
Step 2: Identify the method that checks existence
The method that returns a boolean indicating if the file exists is File.Exists(path).
Final Answer:
File.Exists(path) -> Option A
Quick Check:
Check file existence = File.Exists(path) [OK]
Hint: Exists method returns true if file is present [OK]
Common Mistakes:
Confusing ReadAllText with Exists
Using Delete to check existence
Thinking Copy checks file presence
2. Which of the following is the correct syntax to write text to a file using the File class?
easy
A. File.WriteText(path, "Hello World");
B. File.WriteAllText(path, "Hello World");
C. File.Write(path, "Hello World");
D. File.WriteLine(path, "Hello World");
Solution
Step 1: Recall the correct method name for writing text
The File class uses WriteAllText to write all text to a file at once.
Step 2: Check method signatures
WriteText, Write, and WriteLine are not valid static methods of File class.
Final Answer:
File.WriteAllText(path, "Hello World") -> Option B
Quick Check:
Write text to file = WriteAllText [OK]
Hint: Use WriteAllText to write full text at once [OK]
Common Mistakes:
Using non-existent WriteText method
Confusing File class with StreamWriter methods
Using WriteLine which is not in File class
3. What will be the output of the following code if the file "test.txt" contains the text "Hello"?
B. File.Delete should be called before the first File.Copy
C. File.Copy cannot copy files with .txt extension
D. Second File.Copy will throw an exception because source.txt was deleted
Solution
Step 1: Trace the file operations
First, source.txt is copied to dest.txt. Then source.txt is deleted. Finally, the code tries to copy source.txt again.
Step 2: Identify the problem
After deletion, source.txt no longer exists, so the second copy call will throw a FileNotFoundException.
Final Answer:
Second File.Copy will throw an exception because source.txt was deleted -> Option D
Quick Check:
Copy after delete causes error [OK]
Hint: Cannot copy a file after deleting it [OK]
Common Mistakes:
Assuming File.Copy works on deleted files
Thinking order of Delete and Copy doesn't matter
Believing .txt files cannot be copied
5. You want to create a backup of a file only if it exists, without overwriting an existing backup. Which code snippet correctly uses File class static methods to do this?
hard
A. if (File.Exists("file.txt")) File.Copy("file.txt", "backup.txt", true);
B. File.Copy("file.txt", "backup.txt");
C. if (File.Exists("file.txt") && !File.Exists("backup.txt")) File.Copy("file.txt", "backup.txt");
D. File.Copy("file.txt", "backup.txt", false);
Solution
Step 1: Understand the requirements
Backup only if original file exists and do not overwrite existing backup file.
Step 2: Analyze each option
if (File.Exists("file.txt")) File.Copy("file.txt", "backup.txt", true); overwrites backup.txt because of 'true' overwrite flag. if (File.Exists("file.txt") && !File.Exists("backup.txt")) File.Copy("file.txt", "backup.txt"); checks existence of both files and copies only if backup.txt does not exist. File.Copy("file.txt", "backup.txt"); copies without checks, risking errors or overwrites. File.Copy("file.txt", "backup.txt", false); copies without overwrite but does not check if original file exists.
Final Answer:
if (File.Exists("file.txt") && !File.Exists("backup.txt")) File.Copy("file.txt", "backup.txt"); -> Option C
Quick Check:
Check both files before copy to avoid overwrite [OK]
Hint: Check both files exist before copying without overwrite [OK]