nanoweb-fs
TypeScript icon, indicating that this package has built-in type declarations

1.17.7 • Public • Published

nanoweb-fs

Документація на різних мовах:

nanoweb-fs - це утилітна бібліотека для Node.js, яка надає набір функцій для роботи з файловою системою, включаючи операції з читання, запису та управління файлами та каталогами у різних форматах (YAML, JSON, CSV, TXT).

Мета

Мати в одному пакеті необхідні функції для роботи з файловою системою.

Філософія

  • Просто програмувати складно, а програмувати просто ще складніше;
  • Залишаємо чистий код і чисту голову від сміття.

Встановлення

Щоб встановити nanoweb-fs, використовуйте npm:

npm install nanoweb-fs

Використання

Ось як використовувати nanoweb-fs у вашому проекті:

const {
    readFileSync,
    writeFileSync,
    existsSync,
    statSync,
    join,
    relative,
    dirname,
    basename,
    ensureDirectory,
    removeDirectory,
    findAllFiles,
    calculateFileHash,
    copy,
    remove,
    extension,
    readValueOrFile,
    load,
    save
} = require('nanoweb-fs');

const { loadYAML, saveYAML } = require('nanoweb-fs/types/yaml');

// Приклад використання
const data = loadYAML('./config.yaml');
console.log(data);
saveYAML('./new-config.yaml', data);

Імпорт окремих функцій

Ви можете імпортувати окремі функції напряму:

const { ensureDirectory, removeDirectory } = require('nanoweb-fs/dirs');
const { loadYAML, saveYAML } = require('nanoweb-fs/types/yaml');

API

Функції файлової системи

  • readFileSync(path, options): Читає вміст файлу.
  • writeFileSync(path, data, options): Записує дані у файл.
  • existsSync(path): Перевіряє, чи існує файл або каталог.
  • statSync(path): Повертає статистику файлу або каталогу.

Функції для роботи з шляхами

  • join(...paths): Об'єднує кілька сегментів шляху.
  • relative(from, to): Повертає відносний шлях від одного шляху до іншого.
  • dirname(p): Повертає ім'я каталогу для шляху.
  • basename(p, ext): Повертає останню частину шляху.

Функції роботи з каталогами

  • ensureDirectory(dir, removeBefore): Забезпечує існування каталогу, за необхідності видаляючи його спочатку.
  • removeDirectory(directoryPath, recursively): Видаляє каталог, за необхідності рекурсивно.

Функції роботи з файлами

  • findAllFiles(dir, acceptRegEx, skipRegEx): Рекурсивно знаходить всі файли в каталозі.
  • calculateFileHash(filePath): Обчислює хеш MD5 файлу.
  • copy(src, dest, recursive): Копіює файл або каталог.
  • remove(dest, recursive): Видаляє файл або каталог.
  • extension(file, prefix): Повертає розширення файлу.
  • readValueOrFile(value, rootDir, ClassType, asArray): Читає значення або файл.

Функції YAML

  • loadYAML(file): Завантажує YAML файл і повертає як значення.
  • saveYAML(file, data): Конвертує дані у YAML і зберігає їх у файл.
  • toYAML(data): Конвертує дані у YAML обʼєкт.
  • fromYAML(content): Аналізує YAML обʼєкт.
  • appendYAML(file, data): Додає дані до існуючого YAML файлу.
  • completeYAML(file): Змінює назву YAML файлу для позначення його завершення.

Функції JSON

  • loadJSON(file): Завантажує JSON файл і повертає як значення.
  • saveJSON(file, data, replacer, space): Конвертує дані у JSON і зберігає їх у файл.

Функції CSV

  • loadCSV(filePath, delimiter, quote): Завантажує CSV файл і повертає масив обʼєктів де ключі це перший рядок колонок, а значення це з другого рядка колонки.
  • saveCSV(filePath, data, delimiter, quote, eol): Конвертує дані у CSV і зберігає їх у файл.

Функції TXT

  • loadTXT(txtFile, delimiter): Завантажує текстовий файл і розділяє його вміст за роздільником.
  • saveTXT(txtFile, data, delimiter): Зберігає дані у текстовий файл.

Ліцензія

Цей проект ліцензований за ліцензією ISC. Дивіться файл LICENSE для деталей.

Readme

Keywords

Package Sidebar

Install

npm i nanoweb-fs

Weekly Downloads

15

Version

1.17.7

License

ISC

Unpacked Size

3.83 MB

Total Files

38

Last publish

Collaborators

  • yaro.page