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

【Node.js基础02】fs、path模块

目录

一:fs模块-读写文件

1 加载fs模块对象

2 读制定文件内容文件

3 向文件中写入内容

二:path模块-路径处理

1 问题引入

2 __dirname内置变量

使用方法

一:fs模块-读写文件

fs模块封装了与本机文件系统交互方法和属性

1 加载fs模块对象

const fs = require('fs')//fs是模块标识符:模块名字

fs类似于插件,集成了一定量的方法和属性

2 读制定文件内容文件

fs.readFile('文件路径',(err,data)=>{//读取后的回调函数//data为获取文件内容的Buffer数据流,为16进制数据//将16进制的Buffer数据流转换成字符串//data.toString()
})

3 向文件中写入内容

fs.writeFile('文件路径','写入内容',err=>{//写入回调函数
})

二:path模块-路径处理

1 问题引入

在Node.js环境下执行的JS代码,是跟据终端所在路径查找文件

eg

在该截图中,利用index.js文件读取imge.txt文件。

在终端为Day01文件夹下运行node命令 node 03/index.js,index.js代码中编写的查找文件路径为../imge.txt.因此在Day01文件夹为终端的父级文件夹下查找imge.txt.

因为imge.txt在Day01文件夹下,所以找不到该文件,出现报错现象

因此,在Node.js代码中,读取文件或者其他操作时,要使用绝对路径进行相应查找

2 __dirname内置变量

作用:获取当前模块文件夹的绝对路径

D:\workSpace\front-end development\nodejs和Webpack\Day01\03

使用方法

1 加载path模块

const path = require('path')

2 使用path.join()方法,拼接路径

path.join('路径1','路径2'....)

path.join()会使用特定于平台的分隔符作为定界符,将所有给定的路径片段连接在一起

const fs = require('fs')
console.log(__dirname);
const path = require('path')
fs.readFile(path.join(__dirname, '../', 'imge.txt'), (err, data) => {if (err) console.log(err)else console.log(data.toString())
})

相关文章:

【Node.js基础02】fs、path模块

目录 一:fs模块-读写文件 1 加载fs模块对象 2 读制定文件内容文件 3 向文件中写入内容 二:path模块-路径处理 1 问题引入 2 __dirname内置变量 使用方法 一:fs模块-读写文件 fs模块封装了与本机文件系统交互方法和属性 1 加载fs模块…...

牛客TOP101:单链表的排序

文章目录 1. 题目描述2. 解题思路3. 代码实现 1. 题目描述 2. 解题思路 按我们以往的排序算法来看,针对链表来说都是太不合适,因为很多都会出现指针前移后移,后移还好说,前移对于链表来说就太难了,而且大部分都是某一个…...

数据可视化配色新工具,颜色盘多达2500+类

好看的配色,不仅能让图表突出主要信息,更能吸引读者,之前分享过很多配色工具,例如, 👉可视化配色工具:颜色盘多达3000+类,数万种颜色! 本次再分享一个配色工具pypalettes,颜色盘多达2500+类。 安装pypalettes pip install pypalettes pypalettes使用 第1步,挑选…...

SpringAI简单使用(本地模型+自定义知识库)

Ollama 简介 Ollama是一个开源的大型语言模型服务工具,它允许用户在本地机器上构建和运行语言模型,提供了一个简单易用的API来创建、运行和管理模型,同时还提供了丰富的预构建模型库,这些模型可以轻松地应用在多种应用场景中。O…...

为什么要从C语言开始编程

在开始前刚好我有一些资料,是我根据网友给的问题精心整理了一份「C语言的资料从专业入门到高级教程」, 点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!!很多小伙伴在入门编程时。都…...

[数据集][目标检测]导盲犬拐杖检测数据集VOC+YOLO格式4635张2类别

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):4635 标注数量(xml文件个数):4635 标注数量(txt文件个数):4635 标注…...

数据结构(稀疏数组)

简介 稀疏数组是一种数据结构,用于有效地存储和处理那些大多数元素都是零或者重复值的数组。在稀疏数组中,只有非零或非重复的元素会被存储,从而节省内存空间。 案例引入 假如想把下面这张表存入文件,我们会怎么做?…...

python 爬虫技术 第02节 基础复习

Python基础复习 Python 是一种高级、通用、解释型的编程语言,以其简洁的语法和强大的功能在数据科学、Web 开发、自动化脚本编写、机器学习等领域广泛使用。下面是一些 Python 基础概念的复习: 1. 数据类型 Python 支持多种内置数据类型,包…...

数据结构-C语言-排序(3)

代码位置:test-c-2024: 对C语言习题代码的练习 (gitee.com) 一、前言: 1.1-排序定义: 排序就是将一组杂乱无章的数据按照一定的规律(升序或降序)组织起来。(注:我们这里的排序采用的都为升序) 1.2-排序分…...

【分布式事务】怎么解决分布式场景下数据一致性问题

分布式事务的由来 拿充值订单举个栗子吧,假设:原本订单模块和账户模块是放在一起的,现在需要做服务拆分,拆分成订单服务,账户余额服务。原本收到充值回调后,可以将修改订单状态和扣减余额放在一个mysql事务…...

C# 中的委托

委托的概念 在C#中,委托是一种引用类型,它表示对方法的引用,即委托就是一种用来指向一个方法的引用类型变量。委托的声明类似于方法签名,但是关键字是delegate。下面是一个委托的声明和使用的例子: // 声明一个委托 p…...

通过docker构建基于LNMP的WordPress项目

目录 1.准备nginx 2.准备mysql 3.准备php 4.构建各镜像 5.运行wordpress 1、项目环境: 1.1 (1)公司在实际的生产环境中,需要使用Docker 技术在一台主机上创建LNMP服务并运行Wordpress网站平台。然后对此服务进行相关的性能…...

2024新版IntelliJ IDEA修改包名 全网最简单最粗暴的方法

问题再现 我们在网上淘一些后端框架 又或者是开源的项目 如果要变成自己的 难免会去改包名 即把com.后面的内容改成自己自定义的 第一次我们直接用网络上的方法 shift F6 快捷键 可以修改包名 出现以下情况 进行修改 我们发现失败了 并没有像预计的一样直接把包名修…...

C#中处理Socket粘包

在C#中使用Socket进行网络通信时,粘包问题是常见的。粘包问题通常发生在TCP协议中,因为TCP是流式协议,数据可能会被分割成多个包发送,也可能多个小包会被合并成一个大包接收。 处理粘包问题的常见方法是使用消息分隔符或消息长度…...

7.19IO

思维导图 第一题&#xff1a;测试错误检查锁和递归锁是否会造成死锁状态 #include <stdio.h> #include <string.h> #include <stdlib.h> #include <unistd.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #i…...

【Vue】深入了解 Axios 在 Vue 中的使用:从基本操作到高级用法的全面指南

文章目录 一、Axios 简介与安装1. 什么是 Axios&#xff1f;2. 安装 Axios 二、在 Vue 组件中使用 Axios1. 发送 GET 请求2. 发送 POST 请求 三、Axios 拦截器1. 请求拦截器2. 响应拦截器 四、错误处理五、与 Vuex 结合使用1. 在 Vuex 中定义 actions2. 在组件中调用 Vuex acti…...

【Qt】窗口

文章目录 QMainWindow菜单栏工具栏状态栏浮动窗口对话框自定义对话框Qt内置对话框QMessageBox QMainWindow Qt中的主窗口以QMainWindow表示&#xff0c;其总体结构如下&#xff1a; 菜单栏 菜单栏MenuBar&#xff0c;可包含多个菜单Menu&#xff0c;每个菜单也可以包含多个菜…...

代码随想录训练营【贪心算法篇】

贪心 注&#xff1a;本文代码来自于代码随想录 贪心算法一般分为如下四步&#xff1a; 将问题分解为若干个子问题找出适合的贪心策略求解每一个子问题的最优解将局部最优解堆叠成全局最优解 这个四步其实过于理论化了&#xff0c;我们平时在做贪心类的题目 很难去按照这四步…...

Spark中的JOIN机制

Spark中的JOIN机制 1、Hash Join概述2、影响JOIN的因素3、Spark中的JOIN机制3.1、Shuffle Hash Join3.2、Broadcast Hash Join3.3、Sort Merge Join3.4、Cartesian Product Join3.5、Broadcast Nested Loop Join4、Spark中的JOIN策略5、Spark JOIN机制与策略总结5.1、Spark中的…...

WebRTC QOS方法十三.1(TimestampExtrapolator接收时间预估)

一、背景介绍 虽然我们可通过时间戳的差值和采样率计算出发送端视频帧的发送节奏&#xff0c;但是由于网络延迟、抖动、丢包&#xff0c;仅知道视频发送端的发送节奏是明显不够的。我们还需要评估出视频接收端的视频帧的接收节奏&#xff0c;然后进行适当平滑&#xff0c;保证…...

5分钟精通:开源内容解锁工具Bypass Paywalls Clean完全指南

5分钟精通&#xff1a;开源内容解锁工具Bypass Paywalls Clean完全指南 【免费下载链接】bypass-paywalls-chrome-clean 项目地址: https://gitcode.com/GitHub_Trending/by/bypass-paywalls-chrome-clean 在信息爆炸的数字时代&#xff0c;学术文献、专业报道和深度分…...

BotW-Save-Manager终极方案:深度解析《塞尔达传说:旷野之息》跨平台存档迁移技术

BotW-Save-Manager终极方案&#xff1a;深度解析《塞尔达传说&#xff1a;旷野之息》跨平台存档迁移技术 【免费下载链接】BotW-Save-Manager BOTW Save Manager for Switch and Wii U 项目地址: https://gitcode.com/gh_mirrors/bo/BotW-Save-Manager 你是否曾在Wii U上…...

自适应混沌粒子群优化算法在PID参数整定中的应用:高效控制策略的代码详解与模型分享

自适应混沌粒子群整定PID/ACPSO-PID/PID参数整定 ACPSO&#xff08;自适应混沌粒子群优化&#xff09;整定PID&#xff08;比例-积分-微分控制器&#xff09;是一种高效的控制参数优化方法。 它利用粒子群优化&#xff08;PSO&#xff09;的基本框架&#xff0c;同时融入混沌理…...

OpenClaw性能优化:GLM-4.7-Flash长任务链的Token节省技巧

OpenClaw性能优化&#xff1a;GLM-4.7-Flash长任务链的Token节省技巧 1. 问题背景&#xff1a;长任务链的Token消耗困境 上周我尝试用OpenClaw自动化处理一个典型的办公场景&#xff1a;从200页PDF中提取关键数据&#xff0c;整理成Excel表格后发送邮件。整个流程涉及PDF解析…...

OctoLinker:突破跨平台代码导航壁垒,实现无缝开发体验

OctoLinker&#xff1a;突破跨平台代码导航壁垒&#xff0c;实现无缝开发体验 【免费下载链接】OctoLinker OctoLinker — Links together, what belongs together 项目地址: https://gitcode.com/gh_mirrors/oc/OctoLinker 跨平台开发中&#xff0c;开发者常常面临不同…...

Vitis自定义IP编译报错?手把手教你修复Makefile路径问题(附完整代码)

Vitis自定义IP编译报错&#xff1f;手把手教你修复Makefile路径问题&#xff08;附完整代码&#xff09; 最近在Vitis中导入包含自定义IP的XSA文件时&#xff0c;不少开发者遇到了令人头疼的编译错误——"xxx.h: No such file or directory"。这个看似简单的报错背后…...

如何安全备份QQ空间历史说说?GetQzonehistory工具全攻略

如何安全备份QQ空间历史说说&#xff1f;GetQzonehistory工具全攻略 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 你是否曾担心过QQ空间里那些承载着青春记忆的说说有一天会突然消失&…...

建行江门市分行:银发关爱在行动 暖心服务送到家

服务无边界。近日&#xff0c;建行广东江门分行辖内多家网点接连上演暖心一幕&#xff0c;员工们主动跨出柜台&#xff0c;将金融服务送到客户家中、病房前&#xff0c;用一次次“特事特办”的上门服务&#xff0c;化解客户的“燃眉之急”&#xff0c;生动诠释了“以客户为中心…...

Mermaid CLI:从文本到图表的自动化解决方案

Mermaid CLI&#xff1a;从文本到图表的自动化解决方案 【免费下载链接】mermaid-cli Command line tool for the Mermaid library 项目地址: https://gitcode.com/gh_mirrors/me/mermaid-cli 引言&#xff1a;技术文档中的图表困境 在软件开发过程中&#xff0c;技术文…...

车载以太网gPTP时间同步实战:LinuxPTP工具链配置与避坑指南

车载以太网gPTP时间同步实战&#xff1a;从硬件验证到系统调优的全链路指南 当激光雷达的扫描点云与摄像头图像帧的时间戳偏差超过100纳秒&#xff0c;自动驾驶系统的感知模块就可能出现"重影"现象。这正是我们团队在开发L4级自动驾驶平台时遇到的真实挑战——传统时…...