You want to open two files and write "Start" to the first and "End" to the second, ensuring both files are properly closed after writing. Which code correctly uses nested using statements for this?
hard🚀 Application Q15 of Q15
C Sharp (C#) - Exception Handling
You want to open two files and write "Start" to the first and "End" to the second, ensuring both files are properly closed after writing. Which code correctly uses nested using statements for this?
Ausing (var file1 = new StreamWriter("start.txt")) {
file1.WriteLine("Start");
}
using (var file2 = new StreamWriter("end.txt")) {
file2.WriteLine("End");
}
Busing (var file1 = new StreamWriter("start.txt"))
using (var file2 = new StreamWriter("end.txt"))
{
file1.WriteLine("Start");
file2.WriteLine("End");
}
Cusing (var file1 = new StreamWriter("start.txt")) {
using (var file2 = new StreamWriter("end.txt")) {
file1.WriteLine("Start");
file2.WriteLine("End");
}
}
Dusing var file1 = new StreamWriter("start.txt");
using var file2 = new StreamWriter("end.txt");
file1.WriteLine("Start");
file2.WriteLine("End");
Step-by-Step Solution
Solution:
Step 1: Understand nested using statements
Nested using statements place one using inside the block of another: using (var outer = ...) { using (var inner = ...) { /* use both */ } }. This ensures both resources are disposed, inner first.
Step 2: Compare options
using (var file1 ...) { file1... } using (var file2 ...) { file2... } uses sequential, not nested. using (var file1...) using (var file2...) { ... } lacks braces for first using, invalid syntax. using var file1...; using var file2...; ... uses declarations (C# 8+), not statements. Only using (var file1 ...) { using (var file2 ...) { ... } } is nested using statements.
Final Answer:
using (var file1 = new StreamWriter("start.txt")) {
using (var file2 = new StreamWriter("end.txt")) {
file1.WriteLine("Start");
file2.WriteLine("End");
}
} -> Option C
Quick Check:
Nested using = using block inside using block [OK]
Quick Trick:Nested using: outer { inner using } for multiple resources [OK]
Common Mistakes:
MISTAKES
Omitting braces in nested using
Confusing nested and sequential using
Misusing using var without braces
Master "Exception Handling" in C Sharp (C#)
9 interactive learning modes - each teaches the same concept differently