string fileName = @"C:\mydir.old\myfile.ext";
string path = @"C:\mydir.old\";
string extension;extension = Path.GetExtension(fileName);
Console.WriteLine("GetExtension('{0}') returns '{1}'",
fileName, extension);extension = Path.GetExtension(path);
Console.WriteLine("GetExtension('{0}') returns '{1}'",
path, extension);
string path = @"C:\mydir.old\";
string extension;extension = Path.GetExtension(fileName);
Console.WriteLine("GetExtension('{0}') returns '{1}'",
fileName, extension);extension = Path.GetExtension(path);
Console.WriteLine("GetExtension('{0}') returns '{1}'",
path, extension);
你给得方法是获得扩展名吧,我的文件已没有了扩展名
用上面的语句它就会根据文件类型自动打开。
相当于你在我的电脑中双击此文件。
pr.StartInfo.UseShellExecute=false;
pr.StartInfo.FileName=@"d:\1.txt";
pr.Start();如果这样写只能启动.exe类型等可执行文件.
UseShellExecute=true
就可以。
“保存到数据库中的文件,取出来之后没有文件后缀名,如何才能快速的识别文件的类型。
这个问题应该是比较难的,要识别的话要读文件内容才知道,可是文件千变万化,各种文件的标识肯定不一样。”这段-------你完全可以把文件名(包括文件后缀名)保存到数据库中嘛,又不困难。“但是我发现IE很厉害,它能很快的识别大多数系统中注册的文件,网页上链接word、xml、excel、visio、html、jpg等等,它都能很快的识别用相应的方式打开(注意这些文件都没有了后缀名),最厉害的是visio文件,点击“另存为”的时候它就知道文件类型,这个时候都还没有下载啊。
是不是window中有一些文件格式识别的规范?”这段,你看看资源管理器---工具----文件夹选项-----文件类型,明白了吗?每个文件都按照扩展名匹配了一个打开它的应用程序,称为“关联”,windows都是这样的,没有关联的文件或没有扩展名的文件打开时系统会自动弹出一个窗口,显示常用的程序请你选择与之匹配。
因为它判断文件扩展名跟哪个程序关联,用下面的代码就能实现你的功能
System.Diagnostics.Process.Start(@"d:\1.txt");
xml有个<?xml ....这样就是文本格式他也会自动进行翻译。不行你把网存存成.txt用IE打开? 图片IE不可能识别,任伤二进制的都不行,不信你把图片后缀名去掉,在用IE打开看看?
只会是一些编码,因为它无法关联到相关的解释器