IO 101: Jakie są główne różnice między TextWriter, FileStream i StreamWriter?

Najpierw przepraszam, jeśli to pytanie może brzmieć amatorsko dla doświadczonych programistów wśród was, rzecz w tym, że miałem wiele argumentów na ten temat w pracy, więc naprawdę chcę to wyjaśnić, a to w zasadzie dlatego polegam w społeczności stackoverflow, aby raz na zawsze to załatwić :)

Z jednej strony zgodnie z MSDN mamy:

Klasa TextWriter

Reprezentuje pisarza, który może napisać sekwencyjną serię znaków. Ta klasa jest abstrakcyjna.

Klasa FileStream

Wyświetla strumień wokół pliku, obsługując zarówno synchroniczne, jak i asynchroniczne operacje odczytu i zapisu.

Klasa StreamWriter

Implementuje TextWriter do zapisywania znaków w strumieniu w określonym kodowaniu.

Z drugiej strony jest to oczywiste, że wszystkie należą do System.IO, ale biorąc pod uwagę, że przykłady MSDN nieco mieszają niektóre z nich, wciąż nie docieram do tak pożądanego momentu.

Każdy komentarz byłby bardziej niż doceniany, dzięki z dużym wyprzedzeniem!

questionAnswers(5)

yourAnswerToTheQuestion