# Compare Files

This pre-built action, located under the **@Generic Element**, instructs Avo Assure to compare the contents of two specified files (e.g., .txt, .xml, .json). It calculates the number of differences between the files and stores the result in a dynamic variable.<br>

**Syntax**

**Input Value:** `<Filepath-Original File>;<Filepath - File to Compare>;<Selective/All(Optional)>`&#x20;

{% hint style="warning" %}
**Note:** By default, the final argument in the above syntax is **all** and will store all file’s content in the dynamic variable and if final argument is written as **Selective** then dynamic variable will display selective data of file. &#x20;
{% endhint %}

| Argument                                           | Description                                                                                                                                           |
| -------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| <p>\<Filepath-Original File></p><p>(Required)</p>  | Provide file path to the original file which you want to compare against                                                                              |
| <p>\<Filepath - File to Compare><br>(Required)</p> | Provide file path that needs to be compared with the original.                                                                                        |
| <p>\<Selective/All(Optional)><br>(Optional)</p>    | <p><strong>Selective/All</strong> if provided:<br>• Selective → compares only specific parts<br>• All → compares the entire content of both files</p> |

**Output Value:**&#x20;

| Argument                                 | Description                                               |
| ---------------------------------------- | --------------------------------------------------------- |
| <p>\<Dynamic Variable><br>(Required)</p> | This variable holds the result of the content comparison. |
| <p>\<Dynamic Variable><br>(Optional)</p> | This variable stores the status as **true** or **false**  |

**Example 1**

**Compare two files and identify differences**\
\
The **Compare Files** action takes the value from the Input Value column (e.g., **C:\Files\BaseFile.txt;C:\Files\UpdatedFile.txt;All**) and compares the original file with the file to be compared. The result of the comparison is stored in the **{Comparison}** variable, and the action status is saved in the **{Status}** variable with the following possible values:

* **True** –if the files are compared successfully
* **False** – if the files are not compared

<figure><img src="https://2174257472-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fk8QZzXZMIJSStKAzDSTu%2Fuploads%2FugM3sLjALXmmwCFwshiO%2Fimage.png?alt=media&#x26;token=3d5d0211-73d7-44bc-abde-a04fdda9f7a9" alt=""><figcaption></figcaption></figure>

**Example 2**

**Performs comparison between two files to identify differences in content**\
\
The **Compare Files** action takes the value from the Input Value column (e.g., **C:\Files\original.txt;C:\Files\updated.txt;Selective**) and compares the content of the specified files. When the comparison type is set to **Selective**, only selected parts of the files (e.g., **specific lines or paragraph**) are compared. The result of the file comparison is stored in the **{Comparison}** variable, while the execution status is stored in the **{Status}** variable, with the following possible values:

* **True** – if the files match based on the selected comparison mode.
* **False** –  if any differences are found or an error occurs.

<figure><img src="https://2174257472-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fk8QZzXZMIJSStKAzDSTu%2Fuploads%2FiyfJMMCDGSGxSRUzRWd0%2Fimage.png?alt=media&#x26;token=e235fa2e-9521-4f84-96fa-5ddca16bc073" alt=""><figcaption></figcaption></figure>
