当前位置:网站首页>egg(二十):fs读取本地的txt文件
egg(二十):fs读取本地的txt文件
2022-08-08 15:38:00 【Ponnenult】
前言:
fs读取本地的txt文件。
实现效果:
实现步骤:
安装fs模块
npm i fs --save
utf-8 的txt文件读取
1、router.local.js
module.exports = app => {
const { router, controller, middleware } = app;
router.get("/getTxtXiaoshuo", controller.testApi.fsxiaoshuo.getTxtXiaoshuo);
}
2、controller/testApi/fsxiaoshuo.js
fs.readFile(地址,格式,回调函数)
fs.readFileSync('hello.txt',{flag:'r',encoding:'utf-8'}) //utf-8 格式
const Controller = require('egg').Controller;
class FsXiaoShuoController extends Controller {
async getTxtXiaoshuo(ctx) {
const requestPromise = new Promise((resolve, reject) => {
//fs.readFile(地址,格式,回调函数)
fs.readFile('D:\\1.txt',function (err,data) {
console.log('拿到数据了:')
if(err){
return resolve({
code:400,
data:err
})
}else{
return resolve({
code:200,
data:data
})
}
})
})
})
const result = await requestPromise;
ctx.body = result
}
}
module.exports = FsXiaoShuoController;
gb2312 格式的txt文件读取
1、router.local.js
module.exports = app => {
const { router, controller, middleware } = app;
router.get("/getTxtXiaoshuo", controller.testApi.fsxiaoshuo.getTxtXiaoshuo);
}
2、安装插件(gb2312 必须有的)
npm install iconv-lite
3、controller/testApi/fsxiaoshuo.js
fs.readFile(地址,格式,回调函数)
const Controller = require('egg').Controller;
class FsXiaoShuoController extends Controller {
async getTxtXiaoshuo(ctx) {
const requestPromise = new Promise((resolve, reject) => {
//fs.readFile(地址,格式,回调函数)
fs.readFile('D:\\1.txt',function (err,data) {
console.log('拿到数据了:')
if(err){
return resolve({
code:400,
data:err
})
}else{
let content = iconv.decode(data, 'GB2312').toString();
return resolve({
code:200,
content
})
}
})
})
})
const result = await requestPromise;
ctx.body = result
}
}
module.exports = FsXiaoShuoController;
边栏推荐
猜你喜欢
随机推荐
leetcode/回文子字符串的个数
Install Update(Patches) on ESXi
本博客目录及版权申明
快速排序(C语言版)
Guanghong Technology: The company provides manufacturing services for Xiaomi, Samsung, OPPO, Nokia and other products in India
JS-BOM-for, if (string to case)
从洞察到决策,一文解读标签画像体系建设方法论丨DTVision分析洞察篇
Smobiler的复杂控件的由来与创造
瑞吉外卖学习笔记2
Superset 1.2.0 安装
5G NR RRC连接控制
【kali-权限提升】(4.2.5)社会工程学工具包:PowerShell攻击向量(防报毒)
Tungsten Fabric SDN — OpenStack 与 Kubernetes 异构集群统一 SDN 方案
Synergistic authors open source throttling, 2022 trend of technology foresight (asynchronous programming/container technology)
MySQL:Update高并发下变慢的案例及其涉及的特性
web-sql注入
MySQL中UNION和UNION ALL的区别
【Unity入门计划】制作RubyAdventure02-处理瓦片地图&碰撞
Elegantly detect and update web applications in real time
成员变量和局部变量的区别?