js 文件读取 修改 创建

读取:

readFileSync是同步的

如果你希望将文件内容读取为字符串,可以使用 encoding 参数设置为 'utf8'。例如,假设你想读取一个文本文件并截取前100个字符:

javascript 复制代码
const fs = require('fs');

try {
    // 同步读取文件内容为字符串
    const data = fs.readFileSync('example.txt', 'utf8');
    // 截取前100个字符
    const truncatedData = data.substring(0, 100);
    console.log(truncatedData);
} catch (err) {
    console.error(err);
}

如果你希望以二进制形式读取文件(例如,处理非文本文件如图片或视频),可以先读取为Buffer:

javascript 复制代码
const fs = require('fs');

try {
    // 同步读取文件内容为Buffer
    const buffer = fs.readFileSync('example.bin');
    // 截取前100个字节(注意这里是字节,不是字符)
    const truncatedBuffer = buffer.slice(0, 100);
    console.log(truncatedBuffer);
} catch (err) {
    console.error(err);
}

createReadStream是异步的

javascript 复制代码
const fs = require('fs');
const stream = fs.createReadStream('path/to/your/file.txt', 'utf8');

stream.on('data', (chunk) => {
    console.log(chunk);
});

stream.on('end', () => {
    console.log('Finished reading the file.');
});

stream.on('error', (err) => {
    console.error('Error reading the file:', err);
});

创建:

后面再写

相关推荐
lichenyang45317 分钟前
IPC、JSVM、UIThread、libuv:ASCF 架构图里最容易混的几个词
前端
用户0595401744621 分钟前
Redis记忆存储故障恢复测试踩坑实录:手动测试让我漏掉了2个一致性Bug
前端·css
用户21366100357223 分钟前
Vue2脚手架工程化与Axios集成
前端·vue.js
用户831348593069826 分钟前
Cesium实现黄昏效果:按钮一键控制打开/关闭黄昏效果,滑块拖动实时控制黄昏浓烈度
vue.js·cesium
张元清28 分钟前
React useDebounce Hook:给状态和回调做防抖(2026)
javascript·react.js
我不是外星人30 分钟前
我把 Claude Code 搬到网页!自研高颜值 Web 交互工作台
前端·ai编程·claude
mixuecoding40 分钟前
零成本搭建全球科技热点情报站:12 个平台,6 小时,0 元
前端
用户059540174461 小时前
用了3年Mock,才发现Redis记忆存储的测试一直漏掉了60%的边界场景
前端·css
石小石Orz1 小时前
AI具身交互:实现一个会说话的3D虚拟伴侣
前端·人工智能·后端
Muen1 小时前
iOS设计模式-外观Facade
前端