C# 更新文件,而不是替换或覆盖
这更像是一个问题,因为我正在试验这个 我在互联网上看到了如何更新.txt文件。这很好,但假设我有一个.doxc甚至一个.exe甚至一个.dll文件 如果我们对一个文件做了一个小的更改,我们真的必须替换(覆盖)整个文件吗 有没有可能“更新”文件,这样我们就不会使用太多的数据(通过互联网)C# 更新文件,而不是替换或覆盖,c#,ftp,filesystemwatcher,C#,Ftp,Filesystemwatcher,这更像是一个问题,因为我正在试验这个 我在互联网上看到了如何更新.txt文件。这很好,但假设我有一个.doxc甚至一个.exe甚至一个.dll文件 如果我们对一个文件做了一个小的更改,我们真的必须替换(覆盖)整个文件吗 有没有可能“更新”文件,这样我们就不会使用太多的数据(通过互联网) 我试图实现的是使用FileSystemWatcher创建一个FTP客户端。这将监视计算机上的某个文件夹。如果此文件夹(甚至子目录)中有任何更改,则会上载、删除、重命名或更改文件。但现在我想知道我是否有,比如说,一
我试图实现的是使用FileSystemWatcher创建一个FTP客户端。这将监视计算机上的某个文件夹。如果此文件夹(甚至子目录)中有任何更改,则会上载、删除、重命名或更改文件。但现在我想知道我是否有,比如说,一个20MB的.exe文件或其他什么,是否有可能改变该.exe中的某些内容,而不是仅仅覆盖整个内容。。。因此,节省一些cap。不,不可能只将更改上载到.exe文件。我们必须覆盖它。@Frederik-如果FTP支持更新资源,如HTTP的PUT命令,这是可能的。试着从这个角度去探索。如果您发现了什么,请告诉我们。由于您正在进行实验,我可以提供一些指导。但我不知道下面的操作是否只是更新,或者是被underlysing os调用新替换
- 每种文件类型有不同的案例。首先尝试使用基本类型,txt文件,然后是二进制文件等
- 您应该在某个地方拥有当前文件的整个副本,因为您“应该”比较旧文件以了解有哪些更改
- 然后,当对文件进行更改时,将其与旧文件进行比较(例如,在一个1 MB的文本文件中,更改仅为1 KB),您将需要构建如下格式
[Text][Offset][[operation]
- e、 g)
然后[Y夫人][40][删除]
[X先生][40][添加]
- 然后,您的ftp客户端应该能够实现此格式,并在客户端上更改本地副本
第2步不适用于不支持修改文件块的FTP协议。Hmmm…这很有意义。我会在进行过程中不断更新。谢谢。我想保持一切皆有可能的心态。FTP不支持部分上载。这为我打开了一个全新的视图。谢谢。