当前位置: 首页 > article >正文

nodeJs 学习

 

常用快捷键

 二、fs模块

回调函数为空,则表示写入成功!

练习


const fs = require('fs');
fs.readFile('../files/成绩.txt', 'utf-8', (err, dataStr) => {
  if (err) {
    console.log('读取失败');
    return err;
  }
  console.log('读取成功');
  const arr = dataStr.split(' ')
  const newArr = arr.map(item => item.replace('=', ':'));
  fs.writeFile('../files/02.txt', newArr.join('\r\n'), (err) => {
    if (err) {
      console.log('写入失败');
      return;
    }
    console.log('写入成功');
  })
})

fs模块,路径动态拼接,与执行的时候路径有关;

const fs = require('fs')

fs.readFile('D:\\ty\\code\\nodeJs\\nodeDemo01\\files\\02.txt', 'utf-8', (err,data) => {
  console.log(1,err,data)
})

fs.readFile(__dirname+'../../files/02.txt', 'utf-8', (err,data) => {
  console.log(2,err,data)
})

path模块

获取路径中的文件名

获取路径中的文件扩展名

案例

完整代码: 

const fs = require('fs');
const path = require('path');

const regStyle = /<style>[\s\S]*<\/style>/;
const regScript = /<script>[\s\S]*<\/script>/;
fs.readFile(path.join(__dirname, '../files/ty.html'), 'utf-8', (err, data) => {
  if (err) {
    return;
  }
  console.log(data)
  resolveCss(data)
  resolveJs(data)
  resolveHtml(data);

})

function resolveCss (htmlStr) {
  
  const r1 = regStyle.exec(htmlStr);
  // console.log(r1)
  const newCss = r1[0].replace('<style>', '').replace('</style>', '');
  // console.log(newCss)
  fs.writeFile(path.join(__dirname, './clock/index.css'), newCss, err => {
    console.log(err)
  })
}

function resolveJs (htmlStr) {
  
  const r1 = regScript.exec(htmlStr);
  console.log(r1)
  const newJs = r1[0].replace('<script>', '').replace('</script>', '');
  console.log(newJs)
  fs.writeFile(path.join(__dirname, './clock/index.js'), newJs, err => {
    console.log(err)
  })
}

function resolveHtml (htmlStr) {
  const newHtml = htmlStr
    .replace(regStyle, '<link rel="stylesheet",href="./css"></link>')
    .replace(regScript, '<script src="./index.js"></script>');
  fs.writeFile(path.join(__dirname, '/clock/index.html'), newHtml, err => {
    console.log(err)
  })
}

三http模块

const http = require('http');

const server = http.createServer();

server.on('request', function(req, res) {
  console.log('请求了')
})

server.listen(8080, () => {
  console.log('服务器已启动:http://127.0.0.1:8080')
})

根据不同的url相应不同的内容

四、模块化


http://www.kler.cn/a/274107.html

相关文章:

  • python中os.path.isdir()问题
  • ubuntu停止.netcore正在运行程序的方法
  • MATLAB符号计算-符号表达式基础运算操作
  • TP5 动态渲染多个Layui表格并批量打印所有表格
  • 初始JavaEE篇 —— 网络原理---传输层协议:深入理解UDP/TCP
  • 微信小程序中遇到过的问题
  • C++_day6:2024/3/18
  • MySQL `COALESCE` 函数
  • 一般做策划的的,上哪儿找策划方案借鉴?
  • Echarts横向柱形图
  • 微信小程序注册流程
  • Docker基本配置及使用
  • 嵌入式DSP教学实验箱操作教程:2-20 数模转换实验(模拟SPI总线输出电压值)
  • 数据库系统概论-练手题集合【期末复习|考研复习】
  • 蓝桥杯之冲刺
  • 为什么线程通信的方法 wait(), notify()和 notifyAll()被定义在 Object 类里?为什么他们必须在同步方法或者同步块中被调用?
  • 码云使用 创建项目
  • 数据结构(三)复杂度的深层次剖析
  • 基于tcp协议的网络通信(基础echo版.多进程版,多线程版,线程池版),telnet命令
  • 【No.8】蓝桥杯工具函数模板|迭代器|vector|queue|map|set|银行问题|费里的语言|快递分拣(C++)
  • 携程Kar98k/hotelUuidKey算法分析
  • Stable Diffusion + Segment Anything试用
  • RocketMQ发送和接收方式详解
  • 从基础入门到学穿C++
  • <JavaEE> 了解网络层协议 -- IP协议
  • 【蓝桥杯每日一题】填充颜色超详细解释!!!