*.sfv是啥类型的文件?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了*.sfv是啥类型的文件?相关的知识,希望对你有一定的参考价值。

要用什么才能打开这样类型的文件

参考技术A 1.SFV是什么文件?

SFV (Simple File Verification)(简单文件校验)的简写。
.SFV 文件是一个简单的文本文件,它利用 CRC32 算法来完成简易的文件检测功能,对每个文件计算出一个数值并写入一个.SFV文本文件中。一般下载后会使用SFV工具对下载得到的文件进行计算,并将结果和文件中的结果进行比对,如果不同则表明下载的文件有误,需要重新下载。并用一个程序来计算指定一个或一批文件的校验、大小、日期等,并保存下来。

CRC32: CRC本身是“冗余校验码”的意思。CRC32则表示会产生一个32bit(8位十六进制数)的校验值。由于CRC32产生校验值时源数据块的每一个bit(位)都参与了计算,所以数据块中即使只有一位发生了变化,也会得到不同的CRC32值。

MD5:一种消息摘要算法(也叫单向散列函数)的名称。它通过一定的算法,根据源数据的每一位(bit)最终产生一个128位(bit)的校验值(一个32位的16进制数)。MD5最常见的应用是在密码学里,本文中主要用它来校验文件完整性——如果你觉得上述文字难以理解,那么可以简单的认为MD5就是一种128位的数字签名,用于校验文件是否被修改过即可。
SFV 最常用在RAR、MP3、ISO 等档案格式

2.有什么用?

使用者常常会在网路上下载各类型的档案,然而即使 Internet 上提供了可靠的传输环境,但有时难免会因各种因素使得下载的档案发生错误,和原来上传者提供的档案不完全一样,使用者通常难以查觉。 这时由于无法从文件大小来判断文件是否正确 (文件大小通常和原文件没有差别),而且又没有办法将原始文件拿来和下载的文件实际做比对 (因为原文件在远方的 Server 中),所以这个时候如果对方有提供.SFV 文件,那就好办了!

这个 .SFV 档的存在就是为了解决上述问题而产生的。档案的提供者在上传档案时以 SFV 软件为各档案产生出 CRC 信息,并记录在一个 .SFV 文件中,同时一并将此 .SFV 档案随其它各档上传至网路。而网路上其他使用者在下载时也同时将此 .SFV 档传回电脑,然后由 SFV 软件利用此档案的内容对其它档案做 CRC32 检测,由于档案内容一旦有任何改变时,它的 CRC32 检查码便会不同,因此便可以由此值和档案提供者的 CRC 资讯做比对,如果不相同时,便表示下载的档案和原先网路上的档案不相同(没有 100% 下载完全或传输中发生错误),使用者可以再次于网路上重新下载。

除此之外,虽然大部份的压缩软体在压缩时同时会加上自己的CRC 检查码於档案中,以供解压缩时检测,不过有些压缩软件在做分卷压缩时 (multi volumes),由於提供的 CRC 资讯不完全,以致於解压缩时虽然其中有任何档案发生 CRC 错误,但却无法指出是哪些档案发生问题,在最麻烦的情况下,使用者可能因为这个原因而重新下载整个分片压缩包,此时提供者若能先利用 SFV 软件产生简易的额外检测资讯,而使用者下载后先行检测以确任所有档案正确,若有错误也能马上得知是哪些档案有问题,再予以重新下载,便可以省下不少时间。

3.制作和使用

大家在登陆一些有名的论坛FTP下载时,在每个文件夹中都可以看到有一个SFV后缀名的文件,这个文件有什么用呢?其实它是一个分卷压缩包的检验文件,作用就是用来检查上传的分卷压缩包是否有错误,对于FXP来说,这个文件更是不可获缺的。

比如,在文件夹中都有这样的一文件夹的名字是“-[100%]--[All-files-CRC-OK]--[52-files]--[wInzHeNg]-”,如果缺少SFV文件,名字就变为“-[-SFV-file-MISSING-]-”。其实就是FTP中添加了SFV检验插件,所以它会自动检查上传的文件。

大家以后下载分卷压缩包时就连同SFV文件一起下载,下载好后先用SFV文件检查一下压缩包中是否有错误再解压,如果有错误,只需重新下载有错误的分卷包,这样就不会出现下载后解压时,Winrar跳出对话框提示说CRC错误了!

SFV文件的相关软件很多,例如:QuickSFV、flashsfv

如何使用 SFV2 在伪造查看器中仅加载特定对象?

【中文标题】如何使用 SFV2 在伪造查看器中仅加载特定对象?【英文标题】:How can I load only specifc objects in the forge viewer using SFV2? 【发布时间】:2021-03-27 23:11:59 【问题描述】:

SVF2 的objectids/dbids 与 SVF1 不同。在这个SO-Answer 中,建议使用externalId 而不是objectid。但是,viewer.loadModel(svfUrl,ids:[dbIds...]) 使用 dbIds 仅加载指定的对象。如何使用 SVF2 和 https://developer.api.autodesk.com/modelderivative/v2/regions/eu/designdata/:urn /metadata/:guid/properties 端点仅加载指定的对象?我可以在任何地方访问svf2 objectIds吗?或者我可以在调用Viewer3d::loadModel时使用externalIds吗?

【问题讨论】:

【参考方案1】:

你是对的,“SVF1 dbIDs”和“SVF2 dbIDs”之间是有区别的——SVF2格式的ID是“持久的”,这意味着在同一设计文件的不同版本中,单个ID将引用相同的设计元素(在 SVF1 中并非如此)。

不幸的是,平台的某些部分(如loadModel 查看器方法和/modelderivative/v2/regions/eu/designdata/:urn /metadata/:guid/properties 端点)尚未“赶上” SVF2。在这些更新可用之前,您必须手动映射“在新旧 dbID 之间”,这本身就是另一个重要的任务。

【讨论】:

SVF2 是否使用 IfcGuid 而不是 externaIds?我尝试按照您的 SO 答案 here 的建议使用 viewer.model.getExternalIdMapping(onSuccessCallback, onErrorCallback)。但是,映射的主要键是 IfcGuids 而不是 /modelderivative/v2/regions/eu/designdata/:urn /metadata/:guid/properties 端点返回的 externalIds。 SVF2 是否也破坏了此功能? 是的,在 SVF2 中,IfcGUID 属性不再包含在属性中,因为它在 external_id 中使用。 那么有效地没有办法将 SVF1 属性映射到 SVF2 属性,或者是否存在? viewer.model.getExternalIdMapping/modelderivative/v2/regions/eu/designdata/:urn /metadata/:guid/properties 何时可以与 SVF2 一起使用? 支持 SVF1 ID 和 SVF2 ID 之间的清晰映射是一项正在进行的工作,但您也许可以开始尝试一些已在最新版本的 Forge Viewer 中添加的逻辑,例如例如,Model 类现在应该提供一个名为 remapDbId 的方法,该方法应该能够将“旧”dbID 映射到“新”dbID。 这将是我需要的功能。但是,根据源代码它只设置为2D模式而不是3D模式://F2D/PDF only -- mapping of F2D/PDF dbids to OTG property database v2 dbids ------------ this.setDbIdRemap = function (dbidOldToNew) if (this.is2d()) this.idRemap = dbidOldToNew; ;

以上是关于*.sfv是啥类型的文件?的主要内容,如果未能解决你的问题,请参考以下文章

apk是啥文件类型,用啥打开?

头文件和源文件中的 typedef 返回类型 - 最佳实践是啥?

为输入类型文件键入 onChange 处理程序的正确方法是啥?

excel文件的正确内容类型是啥? [复制]

linux查看一个文件是啥类型的文件

我录制的音频文件在哪里?它在 xcode 中的默认类型是啥?