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.
If you're using Robin Frischmann's work, please consider supporting his Open Source Projects on Patreon.
# yarn
yarn add read-transform-write
# npm
npm i --save read-transform-write
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. |
type Callback {
inputPath: string,
outputPath: string,
input: string,
output: string
}
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}.`)
}
)
49
36
25
16
7
6
5
4
read-transform-write is licensed under the MIT License.
Documentation is licensed under Creative Common License.
Created with ♥ by @rofrischmann.