C#文本比较

来源:百度知道 编辑:UC知道 时间:2024/06/14 17:30:52
我想做一个程序实现的功能是:
假设2个文件A和B
他们的内容分别为
A:abcd
B:abxd
当文件A的内容改变时,比如
A:a12d
文件B应该随之改变
B:a1xd
也就是说记录A和B的不同点,当他们相同的部分发生改变时,另一个也要发生变化,如果他们不同的地方发生变化时,另一个不发生变化
举例的文件比较小,如果文件内容很多,这个问题怎么实现??
有一点要补充,如果文件A的内容变化后长度发生了变化,怎么才能对比出哪里除了问题?请大家给个方案吧

通过事件处理的思想来实现吧,首先在A中保存更改前的位置,然后保存被替换的数据,以及更改后的位置,还有替换的新数据。
在B中,找到刚才A保存的原位置,然后对比A中被替换的旧数据与B中相等字符的个数n,然后截取A中替换的新数据的前n个字符,覆盖B的对应位置的那n个字符即可完成。
就这么多,如果不懂,可以加我qq,327775604。

需要引入一个存储区存储B跟踪A的地方,当这些地方发生变化时,将对文件B进行修改,首先运行一个对比程序,将B跟踪A的地方纪录到这个存储区(比如一个文件) ,以后就可以实现你说的功能了。

没看清呵呵