Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

@guanghechen/helper-file

guanghechen74MIT5.0.7TypeScript support: included

File helper

file helper, split file, merge streams

readme

@guanghechen/helper-file


A collection of utility functions for handling files, such as split big file or merge multiple small files.

Install

  • npm

    npm install --save @guanghechen/helper-file
  • yarn

    yarn add @guanghechen/helper-file

Usage

  • BigFileHelper (inspired by split-file)

    import { bigFileHelper, calcFilePartItemsBySize } from '@guanghechen/helper-file'
    
    async function splitFile(filepath: string): Promise<string[]> {
      const parts = calcFilePartItemsBySize(filepath, 1024 * 1024 * 80) // 80MB per chunk 
      const partFilepaths: string[] = await bigFileHelper.split(filepath, parts)
      return partFilepaths
    }
    
    splitFile('big-file.txt')

Overview

Name Description
BigFileHelper A utility class for split / merging big files
bigFileHelper Default instance of BigFleHelper
calcFilePartItemsBySize Generate file part items by part size
calcFilePartItemsByCount Generate file part items by total of parts
calcFilePartNames Generate file part names (suffix)

changelog

Change Log

All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.

5.0.7 (2023-09-07)

Performance Improvements

  • ⬆️ upgrade dependencies (83e3f3e)

5.0.6 (2023-08-27)

Performance Improvements

  • ⬆️ upgrade dependencies (8fa97de)

5.0.5 (2023-08-19)

Performance Improvements

  • ⬆️ upgrade dependencies (2c25097)

5.0.4 (2023-08-08)

Performance Improvements

  • ⬆️ upgrade dependencies (bbc1ae6)

5.0.3 (2023-07-25)

Performance Improvements

  • 🔧 update npm script (4ffc90a)
  • ⬆️ upgrade dependencies (a9b6097)

5.0.2 (2023-07-15)

Performance Improvements

  • ⬆️ upgrade dependencies (4f0f471)

5.0.1 (2023-05-26)

Performance Improvements

  • 🔧 update jest config to reuse tsconfig for test (54883f0)

5.0.0 (2023-05-13)

Performance Improvements

  • 📝 remove all CHANGELOG in repo (40909ed)

5.0.0-alpha.3 (2023-05-07)

Performance Improvements

  • :bookmark: release (b5a3423)
  • ⬆️ upgrade devDependencies (30a9c27)

5.0.0-alpha.2 (2023-05-01)

Performance Improvements

  • 🔖 publish v5.0.0-alpha.2 (708dd6d)
  • ⬆️ upgrade dependencies (d7f49fe)

5.0.0-alpha.1 (2023-04-09)

Performance Improvements

  • 🔖 publish v5.0.0-alpha.1 (45d61b7)

5.0.0-alpha.0 (2023-04-02)

Performance Improvements

  • ⬆️ don't pack src/ folder in tarball (69671c5)
  • 🔖 publish v5.0.0-alpha.0 (cf3e9a2)
  • 📝 update links for release-5.x.x (672ea87)

4.7.4 (2023-03-26)

Performance Improvements

  • 🔖 publish v4.7.4 (c30d5c4)
  • ⬆️ upgrade devDependencies (8bfcfc5)

4.7.3 (2023-03-25)

Performance Improvements

4.7.2 (2023-03-23)

Performance Improvements

  • 🔖 publish v4.7.2 (e628cc9)
  • ⬆️ upgrade devDependencies (2be4555)

4.7.1 (2023-03-19)

Performance Improvements

  • 🔖 publish v4.7.1 (1349c5c)
  • ⬆️ upgrade devDependencies (ce172dd)

4.7.0 (2023-03-12)

Performance Improvements

4.6.5 (2023-03-12)

Performance Improvements

4.6.4 (2023-03-12)

Performance Improvements

4.6.3 (2023-03-11)

Performance Improvements

4.6.2 (2023-03-10)

Performance Improvements

  • 🔖 publish v4.6.2 (3547f1c)
  • ⬆️ upgrade devDependencies (5f4cfd5)

4.6.1 (2023-03-05)

Performance Improvements

  • 🔖 publish v4.6.1 (2d88cf7)
  • ⬆️ upgrade devDependencies (b358df3)

4.6.0 (2023-02-28)

Performance Improvements

4.5.0 (2023-02-27)

Performance Improvements

4.4.3 (2023-02-27)

Performance Improvements

4.4.2 (2023-02-26)

Performance Improvements

4.4.1 (2023-02-25)

Performance Improvements

4.4.0 (2023-02-25)

Performance Improvements

  • 🔖 publish v4.4.0 (c54cc52)
  • ⬆️ upgrade devDependencies (3a4d2de)

4.3.0 (2023-02-21)

Performance Improvements

4.2.2 (2023-02-20)

Performance Improvements

4.2.1 (2023-02-20)

Performance Improvements

4.2.0 (2023-02-19)

Performance Improvements

4.1.3 (2023-02-18)

Performance Improvements

4.1.2 (2023-02-18)

Performance Improvements

4.1.1 (2023-02-18)

Performance Improvements

  • 🔖 publish v4.1.1 (01f6698)
  • 🔧 remove unnecessary devDependencies (f717518)
  • ⬆️ upgrade devDependencies (e46df0d)

4.1.0 (2023-02-18)

Performance Improvements

4.0.0 (2023-02-13)

Performance Improvements

4.0.0-alpha.8 (2023-02-12)

Performance Improvements

  • 🔖 publish v4.0.0-alpha.8 (07368f1)

4.0.0-alpha.7 (2023-02-12)

Performance Improvements

  • 🔖 publish v4.0.0-alpha.7 (c93c32c)
  • 🔧 upgrade devDependencies (320adbe)

4.0.0-alpha.6 (2023-02-08)

Performance Improvements

  • 🔖 publish v4.0.0-alpha.6 (a9e5548)

4.0.0-alpha.5 (2023-02-05)

Performance Improvements

  • 🔖 publish v4.0.0-alpha.5 (df74a71)

4.0.0-alpha.4 (2023-02-04)

Performance Improvements

  • 🔖 publish v4.0.0-alpha.4 (bbbbb92)

4.0.0-alpha.3 (2023-02-04)

Performance Improvements

  • 🔖 publish v4.0.0-alpha.3 (1f3b9e1)

4.0.0-alpha.2 (2023-02-04)

Performance Improvements

  • 🔖 publish v4.0.0-alpha.2 (42930f9)

4.0.0-alpha.1 (2023-02-04)

Performance Improvements

  • 🔖 publish v4.0.0-alpha.1 (66bd5c7)
  • ⬆️ upgrade devDependencies (75c3da9)

4.0.0-alpha.0 (2023-02-04)

Bug Fixes

  • 🐛 should always use undefined encoding to get raw buffer instead of any pretreated data (53ba810)

Features

  • ✨ implement @guanghechen/helper-cipher-file (abstract from helper-cipher) (a661a46)

Performance Improvements

  • [BREAKING] improve: prefer fileSize instead of a filepath in calcFilePartItemsBySize and calcFilePartItemsByCount (9412c29)
  • :sparkles: [BREAKING] feat: implement @guanghechen/helper-fs & move some methods from @guanghechen/helper-file and @guanghechen/helper-path to it (51e1a57)
  • 🎨 extract calcFilePartNames from BigFileHelper (f8758b3)
  • 🎨 narrow types (36dd01b)
  • ✅ refactor tests (2d4a7e0)
  • 🔖 publish v4.0.0-alpha.0 (2e04d90)
  • 📝 update doc url (c99c7f8)
  • ✅ update tests (c1866e1)
  • ✅ update tests (d06290d)
  • ⬆️ upgrade dependencies (f72ecb0)
  • ⬆️ upgrade devDependencies (325e12d)
  • ⬆️ upgrade devDependencies (5abb430)

3.0.2 (2023-01-14)

Performance Improvements

3.0.1 (2023-01-14)

Performance Improvements

  • 🔖 publish v3.0.1 (d10a768)
  • ⬆️ upgrade devDependencies (2993a46)

3.0.0 (2023-01-09)

Performance Improvements

3.0.0-alpha.5 (2023-01-05)

Performance Improvements

  • :bug: fix jest-config within esm (4050e62)
  • 🔖 publish v3.0.0-alpha.5 (ff359c7)

3.0.0-alpha.4 (2023-01-04)

Performance Improvements

  • :wrench: fix commonjs entry (259e185)
  • 🔖 publish v3.0.0-alpha.4 (ac69bef)

3.0.0-alpha.3 (2023-01-04)

Performance Improvements

  • 🔖 publish v3.0.0-alpha.3 (d05d30a)
  • 🔧 support dual esm/commonjs packages (90363f5)

3.0.0-alpha.2 (2023-01-02)

Performance Improvements

  • :wrench: [BREAKING] chore: support ESM only (29b8c42)
  • 🔖 publish v3.0.0-alpha.2 (76c56b7)

3.0.0-alpha.1 (2023-01-02)

Performance Improvements

  • 🔖 publish v3.0.0-alpha.1 (69dd141)

3.0.0-alpha.0 (2022-12-31)

Performance Improvements

2.1.4 (2022-11-03)

Performance Improvements

2.1.3 (2022-11-03)

Performance Improvements

2.1.2 (2022-10-20)

Performance Improvements

2.1.1 (2022-10-13)

Performance Improvements

2.1.0 (2022-09-18)

Performance Improvements

  • 🔖 publish v2.1.0 (43dcadd)
  • ⬆️ ugprade jest to v29.x.x & update jest-config (d54145c)

2.0.0 (2022-09-17)

Performance Improvements

2.0.0-alpha.3 (2022-09-15)

Performance Improvements

  • :truck: move some filepath relative methods from @algorithm.ts/helper-file to @algorithm/helper-path (1da75c9)
  • 🔖 publish v2.0.0-alpha.3 (3214b8d)

2.0.0-alpha.2 (2022-08-27)

Performance Improvements

  • 🔖 publish v2.0.0-alpha.2 (2d52783)
  • 🔧 update build configs (1770796)

2.0.0-alpha.1 (2022-08-13)

Performance Improvements

  • 🔖 publish v2.0.0-alpha.1 (55e1c7c)

2.0.0-alpha.0 (2022-08-05)

Features

  • ✨ abstract stream utilities to @guanghechen/helper-stream (921396f)

Performance Improvements

  • 🔧 modify build script (4234bc0)
  • 🔖 publish v2.0.0-alpha.0 (fe24ebd)
  • 💥 refactor @guanghechen/chalk-logger (7d8c62a)
  • 💥 rename @guanghechen/commander-helper to @guanghechen/helper-commander (9f42244)
  • 💥 rename @guanghechen/jest-helper to @guanghechen/helper-jest (8545bc2)
  • 💥 rename @guanghehcen/file-helper to @guanghechen/helper-file (2859ff4)