public static bool IsVoxelMapFile(string filename)
{
var extension = Path.GetExtension(filename);
if (extension != null && extension.Equals(V1FileExtension, StringComparison.InvariantCultureIgnoreCase))
{
using (var stream = File.OpenRead(filename))
{
try
{
var msgLength1 = stream.ReadByte();
var msgLength2 = stream.ReadByte();
var msgLength3 = stream.ReadByte();
var msgLength4 = stream.ReadByte();
var b1 = stream.ReadByte();
var b2 = stream.ReadByte();
return (b1 == 0x1f && b2 == 0x8b);
}
catch
{
return false;
}
}
}
if (extension != null && extension.Equals(V2FileExtension, StringComparison.InvariantCultureIgnoreCase))
{
try
{
return ZipTools.IsGzipedFile(filename);
}
catch
{
return false;
}
}
return false;
}