"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.deleteFile = exports.getFileSize = exports.verifyMD5 = exports.generateMD5 = void 0; const fs_1 = __importDefault(require("fs")); const crypto_1 = __importDefault(require("crypto")); const generateMD5 = (filePath) => { return new Promise((resolve, reject) => { const hash = crypto_1.default.createHash('md5'); const stream = fs_1.default.createReadStream(filePath); stream.on('error', reject); stream.on('data', (chunk) => { hash.update(chunk); }); stream.on('end', () => { const md5sum = hash.digest('hex'); resolve(md5sum); }); }); }; exports.generateMD5 = generateMD5; const verifyMD5 = async (filePath, expectedMD5) => { try { const actualMD5 = await (0, exports.generateMD5)(filePath); return actualMD5 === expectedMD5; } catch (error) { console.error('验证MD5失败:', error); return false; } }; exports.verifyMD5 = verifyMD5; const getFileSize = (filePath) => { try { const stats = fs_1.default.statSync(filePath); return stats.size; } catch (error) { console.error('获取文件大小失败:', error); return 0; } }; exports.getFileSize = getFileSize; const deleteFile = (filePath) => { try { fs_1.default.unlinkSync(filePath); return true; } catch (error) { console.error('删除文件失败:', error); return false; } }; exports.deleteFile = deleteFile; //# sourceMappingURL=fileUtils.js.map