C#でワード、エクセル、PDF、メールのmsgファイルといった形式のファイルの内容を読み込みたいのですが、テキストファイル以外はうまくいきません。

string file = test.docx;

using (StreamReader sr = new StreamReader(@file, Encoding.GetEncoding("Shift_JIS")))

テキストファイルに変換して読み込む方法が現実的だと思われるのですが、どうすればよいでしょうか?
ご教授いただければ幸いです。