C# 如何在OpenFile对话框中使用不同算法打开不同类型的文件?
我想用OpenFileDialog打开两种类型的文件(.txt和.dat),每种类型的文件都应该用不同的算法打开。C# 如何在OpenFile对话框中使用不同算法打开不同类型的文件?,c#,file-io,openfiledialog,C#,File Io,Openfiledialog,我想用OpenFileDialog打开两种类型的文件(.txt和.dat),每种类型的文件都应该用不同的算法打开。 OpenFile方法获取我正在打开的文件流。但是,我能得到那个文件的类型吗?或者有其他方法来区分文件吗?如果我们谈论winforms,那么您就有了可用的文件名,可以在打开文件之前检查扩展名 var dialog = new OpenFileDialog(); if (dialog.ShowDialog() == DialogResult.OK) { var extensi
OpenFile方法获取我正在打开的文件流。但是,我能得到那个文件的类型吗?或者有其他方法来区分文件吗?如果我们谈论winforms,那么您就有了可用的文件名,可以在打开文件之前检查扩展名
var dialog = new OpenFileDialog();
if (dialog.ShowDialog() == DialogResult.OK)
{
var extension = Path.GetExtension(dialog.FileName);
// do what you need
}
如果您知道扩展名,您可以猜测类型。这是Windows窗体中的吗?我注意到它的
OpenFileDialog.OpenFile
返回一个流
(这是没有帮助的),而Silverlight等价物返回一个FileInfo
(其中包含文件名)。FileInfo也在Windows窗体中工作谢谢,这是一个winform,但我用FileInfo获得了扩展名