当前位置: 首页 > 知识库问答 >
问题:

比较VisualStudio中的两个文件

阎鸿煊
2023-03-14

我在Visual Studio中看到了新的比较工具

有没有一种方法,我可以只是比较两个文件与内置的功能在Visual

共有3个答案

徐旻
2023-03-14

您可以从VisualStudioGallery尝试VSCommands扩展。

最新版本允许您选择两个文件并进行比较:

鲁泰宁
2023-03-14

受Vladimir Reshetnikov上述答案的启发,我找到了一种非常舒适的方法,可以通过拖放或“发送到”上下文菜单,使用Visual Studio即时比较两个文件。它只需要一点准备,你只需要做一次,然后它就像一把瑞士军刀一样有用。

Visual Studio已经具备了您所需的一切,要使其正常工作,只需要一些配置步骤:

准备:

>

  • 使用您喜欢的文本编辑器创建一个新的批处理文件。键入以下内容:

    @echo off
    setlocal
    set vspath=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\Common7\IDE
    start "Compare files" /B /MIN "%vspath%\devenv.exe" /diff %2 %1 First:'%2' Second:'%1'
    

    您可能会注意到,我已在批处理中反转了%1%2参数。这是因为我注意到文件浏览器将第二个文件作为第一个参数传递,然后将第一个文件作为第二个参数传递。

    将此代码保存为VS_FileCompare.cmd来使用它,并在需要时修改vspath以匹配devenv.exe的位置(取决于您当前使用的Visual Studio版本,请参阅脚注*)

    要么为VS_FileCompare.cmd创建一个名为“文件比较”的快捷方式,并将其放置在桌面上(如下面的动画所用),这样它就可以随时拖动

    使用方法:

    >

  • 通过WinE打开Windows资源管理器

    在资源管理器中选择两个要比较的文件

    拖放它们,如下图所示:

    几秒钟后(取决于Visual Studio的启动时间),结果将显示在Visual Studio中:

    注意:如果Visual Studio已经打开,则不会造成伤害。在这种情况下,它只是在Visual Studio的运行实例中打开一个新窗口。因此,您可以比较多个文件对,但请确保一次只选择两个文件。

    这里有一个替代方法,您可以使用批处理文件VS_FileCompare.cmd在上一节中提到。它允许使用上下文菜单的发送到文件夹来比较文件。

    准备:

    1. 为批处理文件VS_FileCompare.cmd创建快捷方式Compare2Files VS并将其复制到SendTo文件夹中。通过WinE
    2. 打开Windows资源管理器
    3. 通过在文件浏览器的地址栏中输入shell: sendto来打开SendTo文件夹(如这里所述)。然后,将准备好的快捷方式放入此文件夹。

    使用方法

    >

  • 通过WinE打开Windows资源管理器

    在资源管理器中选择两个要比较的文件

    假设批处理文件VS_FileCompare.cmd的快捷方式名为"Compare2Files VS",您可以选择这两个文件,右键单击并选择发送到→Compare2Files VS来html" target="_blank">调用比较,如下所示:

    几秒钟后(取决于Visual Studio的启动时间),结果将显示在Visual Studio中:

    提示:如果您喜欢SendTo文件夹方法,您可以做更多的事情——例如,您可以直接通过SendTo打开一个命令外壳,它从正确的路径(所选文件所在的路径)开始。看看这里,找出如何做到这一点。您甚至可以将它与脚本相结合,以获得更高的权限,只需一点额外的努力。

    MSDN参考资料:

    • diff窗口的用法
    • Visual Studio的Diff参数

    *)

    右键单击以打开关联菜单。选择更多→ 打开文件位置
    Windows资源管理器将打开,并突出显示Visual Studio快捷方式。

    在VisualStudio上单击鼠标右键,然后选择“属性”

    在“属性”对话框中,可以在“目标:”中找到路径:

  • 罗茂实
    2023-03-14

    您可以调用devenv。exe/diff列表1。txt列表2。txt从可视

     类似资料:
    • 我想比较visual studio中的两个文件(包含存储过程的文件),所以我想忽略文件中所有的差异。 我打开命令窗口,使用但它也考虑了案例差异 我已经看过这个问题和答案了

    • 有两个叫做“a.txt”和“b.txt”的文件都有单词列表。现在我想检查哪些单词在“a.txt”中是额外的,而不是在“b.txt”中。 我需要一个有效的算法,因为我需要比较两个字典。

    • 问题内容: 我有以下两个收藏夹,其中包含学生证。 id是格式为111-1111的字符串。例如ID 221-2534、215-6365等。 这些ID与其他数据一起位于固定格式的文件中。也就是说,前8个字符ID,后10个字符名称,后10个字符地址,依此类推。 我将id读入集合,如下所示: 此处,文件中的条目按SSN排序。因此,我相信所形成的集合也将得到排序。 现在: 案例: 我想通过比较两个集合来了解

    • 问题内容: 我有两个表,想要像这样在sqlite上比较行 我想产生这样的结果 sqlite中的语法如何?谢谢 问题答案:

    • 我有两个表,分别是产品和采购: PRODUCTS表-将获得购买的所有新产品。这意味着表prroducts中不存在相同的productname。所有独特产品列表 采购表-具有唯一purchase_id的所有采购产品的列表。 > 如果要在PURCHASE中添加或插入值,表PRODUCTS将获得PURCHASE的所有值,但前提是PURCHASE中的productname不存在于PRODUCTS中的'pr