批量根据位置打开不同的程序

时间:2013-03-04 19:41:00

标签: c# batch-file file-extension file-type

是否有批次代码/ c#,例如,我有一个动漫文件夹和一个电影文件夹,我想用程序A观看动画和用程序B观看电影。
有没有办法可以使用不同的程序打开相同的文件类型(.mkv / .avi / .mp4),具体取决于其文件夹/硬盘位置?
我假设我必须设置所有视频文件类型才能打开这个批次,但我不知道要输入的参数 感谢。

2 个答案:

答案 0 :(得分:0)

如果找到了文件,可以为其创建一个FileInfo对象,并通过以下方式检查目录路径:

FileInfo file = new FileInfo(@"c:\Anime\Anime.avi"); 
string dirPath = file.DirectoryName;

if (dirPath == @"c:\Anime")
{
  //Open with VLC
}
else if (dirPath == ...something else...)
{
  //Open with something else
}

答案 1 :(得分:0)

您可以编写一个批处理文件,根据文件夹启动相应的应用程序,如下所示:

IF /I "%~dp1"=="C:\anime\" programA.exe %*
IF /I "%~dp1"=="C:\movie\" programB.exe %*    

然后右键单击其中一个文件并选择打开方式 - 选择默认程序,然后浏览到刚刚创建的.bat文件。确保选中“始终使用所选程序打开此类文件”复选框。

从现在开始,您只需双击该文件即可启动正确的程序。