#include <iostream>
#include <fstream>
#include <cstdint>
#include <cmath>
int main() {
std::ifstream file1("file1.bin", std::ios::binary);
std::ifstream file2("file2.bin", std::ios::binary);
if (!file1.is_open() || !file2.is_open()) {
std::cerr << "Error opening file(s)" << std::endl;
return 1;
}
const size_t bufferSize = 1024; // 你可以根據(jù)你的內(nèi)存情況調(diào)整這個(gè)值
uint8_t buffer1[bufferSize];
uint8_t buffer2[bufferSize];
size_t totalBytes = 0;
double totalError = 0.0;
while (true) {
file1.read(reinterpret_cast<char*>(buffer1), bufferSize);
file2.read(reinterpret_cast<char*>(buffer2), bufferSize);
size_t bytesRead = file1.gcount();
if (bytesRead == 0) break;
for (size_t i = 0; i < bytesRead; ++i) {
totalError += std::abs(buffer1[i] - buffer2[i]);
}
totalBytes += bytesRead;
}
double mae = totalError / totalBytes;
std::cout << "Mean Absolute Error: " << mae << std::endl;
return 0;
}
分塊讀取文件
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- 背景:有4個(gè)文件待處理,每個(gè)文件大小均為20G,但是電腦內(nèi)存僅有36G,那么如何用最快的速度將這四個(gè)文件進(jìn)行處理用...
- 轉(zhuǎn)載于https://blog.csdn.net/zm714981790/article/details/5137...
- 一、異步文件的寫入 1、引入fs模塊 2、打開文件 fs.open(path ,flags [ , mode] ,...
- 今天上班有個(gè)需求,就是需要吧css文件下的所有樣式名全部加上時(shí)間戳,用來避免線上瀏覽器的緩存。文件少還好,可以一個(gè)...
- 由于node.js是服務(wù)端的程序,必須要有讀寫文件操作,在原生的js中沒有這樣的功能,在Node中如果要讀寫文件,...