|
NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
|
文件比较与差异分析工具类 更多...
#include <file_diff.hpp>
类 | |
| struct | binary_diff_entry |
| 二进制差异条目 更多... | |
Public 类型 | |
| using | size_type |
| 大小类型 | |
| using | difference_type = int64_t |
| 差异偏移量类型 | |
静态 Public 成员函数 | |
| static NEFORCE_NODISCARD bool | compare (const path &file1, const path &file2, bool binary=true) |
| 比较两个文件 | |
| static NEFORCE_NODISCARD bool | compare_binary (const path &file1, const path &file2) |
| 二进制比较 | |
| static NEFORCE_NODISCARD bool | compare_text (const path &file1, const path &file2, bool ignore_case=false, bool ignore_whitespace=false) |
| 文本比较 | |
| static NEFORCE_NODISCARD vector< binary_diff_entry > | binary_diff (const path &file1, const path &file2, size_type max_diffs=100) |
| 获取二进制差异列表 | |
文件比较与差异分析工具类
提供静态方法进行文件比较和差异分析。
主要功能:
在文件 file_diff.hpp 第 33 行定义.
|
static |
获取二进制差异列表
| file1 | 第一个文件路径 |
| file2 | 第二个文件路径 |
| max_diffs | 最多返回的差异条目数,默认100 |
逐字节比较两个文件,收集所有差异点。 如果文件大小不同,会包含一个标识大小差异的条目。 限制max_diffs可避免处理超大文件时产生过多条目。
|
static |
比较两个文件
| file1 | 第一个文件路径 |
| file2 | 第二个文件路径 |
| binary | 是否使用二进制比较,默认为true |
根据binary参数选择二进制比较或文本比较。
二进制比较
| file1 | 第一个文件路径 |
| file2 | 第二个文件路径 |
逐字节比较两个文件的内容,要求文件大小相同且每个字节都相等。 使用缓冲读取方式,避免一次性加载整个文件到内存。
|
static |
文本比较
| file1 | 第一个文件路径 |
| file2 | 第二个文件路径 |
| ignore_case | 是否忽略大小写 |
| ignore_whitespace | 是否忽略空白字符(空格、制表符、换行等) |
按行比较文本文件,支持: