2.1.0 • Published 7 years ago
read-transform-write v2.1.0
read-transform-write
An easy-to-use utility to transform files with a single function.
It uses fs.readFile and fs.writeFile under the hood and throws an error if something goes wrong.
The encoding is set to utf8. If you need something else, please file an issue.
Support Me
If you're using Robin Frischmann's work, please consider supporting his Open Source Projects on Patreon.
Installation
# yarn
yarn add read-transform-write
# npm
npm i --save read-transform-writeUsage
Parameter
| Parameter | Type | Description |
|---|---|---|
| inputPath | (string) | The absolute path to the input file. |
| transform | (Function) | The transformation method.It receives the input data and returns method receving a write-method that must be called with the transformed data and a output path. |
| callback | (Function?) | An optional callback that receives an object with the callback shape. |
Callback Shape
type Callback {
inputPath: string,
outputPath: string,
input: string,
output: string
}Example
import { join } from 'path'
import transformFile from 'read-transform-write'
const input = join(__dirname, 'input.txt')
const output = join(__dirname, 'output.txt')
const transform = data => write => write(
output,
data
.split('\n')
.map(val => parseInt(val, 10))
.map(Math.sqrt)
.join('\n')
)
transformFile(
input,
transform,
({ output, outputPath }) => {
console.log(`Written ${output} to ${outputPath}.`)
}
)input.txt
49
36
25
16output.txt
7
6
5
4License
read-transform-write is licensed under the MIT License. Documentation is licensed under Creative Common License. Created with ♥ by @rofrischmann.