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

Nodejs前端学习Day4_fs文件系统模块基础应用之成绩转换

君子应有龙蛇之变,处于木雁之间

文章目录

  • 前言
  • 一、fs文件系统模块
    • 1.1 判断文件是否读取成功
    • 1.2 向指定的文件中写入内容
      • 1.2.1 fs.writeFile的语法格式
      • 1.2.2 fs.readFile和fs.writeFile的运用——成绩转换
  • 总结


前言

Day3fs开了点头


一、fs文件系统模块

1.1 判断文件是否读取成功

可以判断err对象是否为null,从而知晓文件读取的结果

const fs = require('fs')fs.readFile('./files/1.txt','utf8',function(err,dataStr){if(err){return console.log('读取文件失败'+err.message)}console.log('读取文件成功!'+dataStr)
})

成功
在这里插入图片描述
失败
在这里插入图片描述

1.2 向指定的文件中写入内容

1.2.1 fs.writeFile的语法格式

fs.writeFile(file,data[,options],callback)
  • 参数1:必选参数,需要指定一个文件路径的字符串,表示文件的存放路径
  • 参数2:必选参数,表示要写入的内容。
  • 参数3:可选参数,表示以什么格式写入文件内容,默认值是utf8。
  • 参数4:必选参数,文件写入完成后的回调函数

// 1.导入文件系统模块
const fs =  require('fs')
// 2.调用fs.writeFile()方法,写入文件的内容
// 参数1:表示文件的存放路径
// 参数2:表示要写入的内容
// 参数3:回调函数
fs.writeFile('./files/3.txt','ooooook',function(err) {// 2.1 如果文件写入成功,则err的值等于null// 2.2 如果文件写入失败,则err的值等于一个错误对象// console.log(err)if(err) {return console.log('文件写入失败!'+ err.message)}console.log('文件写入成功!')
})

1.2.2 fs.readFile和fs.writeFile的运用——成绩转换

直接见代码

// 1.导入 fs 模块
const fs = require('fs')// 2.调用fs.readFile()读取文件的内容
fs.readFile('./素材/成绩.txt','utf8',function(err,dataStr){// 3.判断是否读取成功if(err){return console.log('读取文件失败!' + err.message)}// console.log('读取文件成功'+ dataStr)//4.1先把成绩的数据按照空格进行分割const arrOld = dataStr.split(' ')//此处arrOld是String对象//4.2对于循环分割后的数组,对每一项数据进行字符串的替换操作const arrNew = []//此处arrNew是Array对象arrOld.forEach(item => {arrNew.push(item.replace('=',':'))})console.log(arrNew)//4.3把新数组中的每一项进行合并,得到一个新的字符串const newStr = arrNew.join('\r\n')console.log(newStr)//5.调用fs.writeFile()方法,把处理完毕的成绩,写入到新文件中fs.writeFile('./files/成绩_OK.txt',newStr,function(err){if(err){return console.log('写入文件失败!'+err.message)}console.log('成绩写入成功!')})})

总结

用git来管理代码的产出,感觉不错(搞git花了比较多的时间,但是记录下来了,方便复用)

破局的方法是离开家

http://www.lryc.cn/news/288849.html

相关文章:

  • 五、Kotlin 函数进阶
  • 重温《深入理解Java虚拟机:JVM高级特性与最佳实践(第二版)》 –– 学习笔记(一)
  • 定向减免!函数计算让轻量 ETL 数据加工更简单,更省钱
  • git checkout和git switch的区别
  • 故障树分析蒙特卡洛仿真程序(附MATLAB完整代码)
  • 数据结构-线性表
  • java金额数字转中文
  • Ubuntu findfont: Font family ‘SimHei‘ not found.
  • mysql小知识
  • Unity中URP下逐顶点光照
  • Spring Boot3整合Druid(监控功能)
  • 使用Gin框架,快速开发高效的Go Web应用程序
  • 【Unity】【游戏开发】Pico打包后项目出现运行时错误如何Debug
  • 一种解决常用存储设备无法被电脑识别的方法
  • Spark运行架构以及容错机制
  • 短剧APP小程序源码 全开源短视频系统源码/h5/app/小视频系统
  • 深度学习中图像分类、目标检测、语义分割、实例分割哪个难度大,哪个检测精度容易实现,哪个速度低。请按照难度、精度容易实现程度、速度排名。
  • 【AI视野·今日NLP 自然语言处理论文速览 第七十五期】Thu, 11 Jan 2024
  • 数据结构:搜索二叉树 | 红黑树 | 验证是否为红黑树
  • 数据结构顺序表
  • 手把手教你优雅的安装虚拟机 Ubuntu —— 图文并茂
  • 源 “MySQL 5.7 Community Server“ 的 GPG 密钥已安装,但是不适用于此软件包。请检查源的公钥 URL 是否配置正确。
  • springboot核心有几层架构
  • css3表格练习
  • 项目实战——Qt实现FFmpeg音视频转码器
  • AI数字人-数字人视频创作数字人直播效果媲美真人
  • 初识C语言·动态内存开辟
  • 机器学习 | 利用Pandas进入高级数据分析领域
  • 三、计算机理论-计算机网络-物理层,数据通信的理论基础,物理传输媒体、编码与传输技术及传输系统
  • ERROR Failed to get response from https://registry.npm.taobao.org/ 错误的解决