Node.js【文件系统模块、路径模块 、连接 MySQL、nodemon、操作 MySQL】(三)-全面详解(学习总结---从入门到深化)(上)

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: Node.js【文件系统模块、路径模块 、连接 MySQL、nodemon、操作 MySQL】(三)-全面详解(学习总结---从入门到深化)

Node.js 文件系统模块(二)



打开文件


fs.open(path, flags[, mode], callback)

Flag  描述
以读取模式打开文件。如果文件不存在抛出异常。
r+ 以读写模式打开文件。如果文件不存在抛出异常。
rs  以同步的方式读取文件。
rs+  以同步的方式读取和写入文件。
以写入模式打开文件,如果文件不存在则创建。
wx 类似 'w',但是如果文件路径存在,则文件写入失败。
w+  以读写模式打开文件,如果文件不存在则创建。
wx+  类似 'w+', 但是如果文件路径存在,则文件读写失败。
以追加模式打开文件,如果文件不存在则创建。
ax  类似 'a', 但是如果文件路径存在,则文件追加失败。
a+ 以读写追加模式打开文件,如果文件不存在则创建。
ax+  类似 'a+', 但是如果文件路径存在,则文件读取追加失败。


const fs=require('fs')
fs.open('input.txt', 'r+', function(err, fd)
{
 if (err) {
   return console.error(err);
 } 
  console.log(fd);
  fs.writeFile(fd, '小童程序员', (err) => {
    if(err){
     return  console.log(err)
   }
    console.log('写入完成')
 })
});


Node.js 文件系统模块(三)



查看文件


fs.stat(path, callback)

var fs = require("fs");
fs.stat('input.txt', function (err, stats)
{
 if (err) {
   return console.error(err);
 }
 console.log(stats);
 // 检测文件类型
 console.log("是否为文件 ? " + stats.isFile());
 console.log("是否为目录 ? " + stats.isDirectory());  
});


删除文件


fs.unlink(path, callback)

fs.unlink('input.txt', function(err) {
 if (err) {
   return console.error(err);
 }
 console.log("文件删除成功!");
});


Node.js 文件系统模块(四)



1、创建目录


fs.mkdir(path[, options], callback)

var fs = require("fs");
// tmp 目录必须存在
console.log("创建目录 tmp/test");
fs.mkdir("./tmp/test",function(err){
 if (err) {
   return console.error(err);
 }
 console.log("目录创建成功。");
});
fs.mkdir("./tmp/test",{ recursive: true
},function(err){
  if (err) {
    return console.error(err);
 }
  console.log("目录创建成功。");
});


2、读取目录


fs.readdir(path, callback)

var fs = require("fs");
console.log("查看 /tmp 目录");
fs.readdir("./tmp",function(err, files){
 if (err) {
   return console.error(err);
 }
 files.forEach( function (file){
   console.log( file );
 });
});


3、删除目录


fs.rmdir(path, callback)

var fs = require("fs");
// 执行前创建一个空的 /tmp/test 目录
console.log("准备删除目录 ./tmp/test");
fs.rmdir("./tmp/test",function(err){
 if (err) {
   return console.log(err);
 }
});


提示:

删除目录,如果目录下面有下一级则报错


Node.js 路径模块



path 是Node.js的路径模块,用来处理路径。


path.dirname()


返回路径的目录部分

require('path').dirname('./test/something') // ./test
require('path').dirname('./test/something/file.txt')
// ./test/something


path.extname()


返回路径的扩展名部分

require('path').extname('./test/something') // ''
require('path').extname('./test/something/input.txt') // '.txt'


path.isAbsolute()


如果是绝对路径,则返回 true。

require('path').isAbsolute('/test/something') // true
require('path').isAbsolute('./test/something') // false


path.join()


连接路径的两个或多个部分

const name = '程序员'
require('path').join('/', '小童', name) //'/小童/程序员'


path.parse()


解析对象的路径为组成其的片段:


root : 根路径。

dir : 从根路径开始的文件夹路径。

base : 文件名 + 扩展名

name : 文件名

ext : 文件扩展名

require('path').parse('/users/test.txt')
//{
// root: '/',
// dir: '/users',
// base: 'test.txt',
// ext: '.txt',
// name: 'test'
//}


path.relative()


接受 2 个路径作为参数。 基于当前工作目录,返回从第一个路径到第二个路径的相对路径。

require('path').relative('/Users/joe','/Users/joe/test.txt') //'test.txt'
require('path').relative('/Users/joe','/Users/joe/something/test.txt') //'something/test.txt'


path.resolve()


获得相对路径的绝对路径计算

require('path').resolve('joe.txt')
require('path').resolve('/etc', 'joe.txt') //'/etc/joe.txt'



Node.js【文件系统模块、路径模块 、连接 MySQL、nodemon、操作 MySQL】(三)-全面详解(学习总结---从入门到深化)(下):https://developer.aliyun.com/article/1420307

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
5天前
|
关系型数据库 MySQL 数据库连接
Unity连接Mysql数据库 增 删 改 查
在 Unity 中连接 MySQL 数据库,需使用 MySQL Connector/NET 作为数据库连接驱动,通过提供服务器地址、端口、用户名和密码等信息建立 TCP/IP 连接。代码示例展示了如何创建连接对象并执行增删改查操作,确保数据交互的实现。测试代码中,通过 `MySqlConnection` 类连接数据库,并使用 `MySqlCommand` 执行 SQL 语句,实现数据的查询、插入、删除和更新功能。
|
1月前
|
SQL 关系型数据库 MySQL
网安入门之MySQL后端基础
《网安入门之MySQL后端基础》简介: 本文介绍了数据库及MySQL的基础知识,涵盖数据库的概念、结构与操作。数据库是组织化存储数据的集合,通过表、列、行等结构实现高效管理。MySQL作为开源的关系型数据库管理系统,广泛应用于Web开发。文中详细讲解了MySQL的基本操作,如增(INSERT)、删(DELETE)、改(UPDATE)、查(SELECT)等语句的使用方法,并介绍了数据库事务的ACID特性。此外,还探讨了SQL注入攻击的风险及防范措施,强调了预处理语句的重要性。最后,简述了PHP中mysqli扩展的使用方法,包括连接数据库、执行查询和关闭连接等步骤。
|
20天前
|
关系型数据库 MySQL 数据库连接
数据库连接工具连接mysql提示:“Host ‘172.23.0.1‘ is not allowed to connect to this MySQL server“
docker-compose部署mysql8服务后,连接时提示不允许连接问题解决
|
2月前
|
JavaScript 前端开发
【JavaScript】——JS基础入门常见操作(大量举例)
JS引入方式,JS基础语法,JS增删查改,JS函数,JS对象
|
3月前
|
关系型数据库 MySQL 网络安全
DBeaver连接MySQL提示Access denied for user ‘‘@‘ip‘ (using password: YES)
“Access denied for user ''@'ip' (using password: YES)”错误通常与MySQL用户权限配置或网络设置有关。通过检查并正确配置用户名和密码、用户权限、MySQL配置文件及防火墙设置,可以有效解决此问题。希望本文能帮助您成功连接MySQL数据库。
312 4
|
3月前
|
Web App开发 JavaScript 前端开发
如何学习JavaScript?
如何学习JavaScript?
72 5
|
3月前
|
JavaScript 前端开发 索引
JavaScript学习第二章--字符串
本文介绍了JavaScript中的字符串处理,包括普通字符串和模板字符串的使用方法及常见字符串操作方法如`charAt`、`concat`、`endsWith`等,适合前端学习者参考。作者是一位热爱前端技术的大一学生,专注于分享实用的编程技巧。
44 2
|
3月前
|
存储 JavaScript 前端开发
JavaScript学习第一章
本文档介绍了JavaScript的基础知识,包括其在网页中的作用、如何通过JavaScript动态设置HTML元素的CSS属性,以及JavaScript中的变量类型(`var`、`let`、`const`)和数据类型(基本数据类型与引用数据类型)。通过实例代码详细解释了JavaScript的核心概念,适合初学者入门学习。
67 1
|
3月前
|
安全 关系型数据库 MySQL
【赵渝强老师】MySQL的连接方式
本文介绍了MySQL数据库服务器启动后的三种连接方式:本地连接、远程连接和安全连接。详细步骤包括使用root用户登录、修改密码、创建新用户、授权及配置SSL等。并附有视频讲解,帮助读者更好地理解和操作。
486 1
|
3月前
|
机器学习/深度学习 自然语言处理 前端开发
前端神经网络入门:Brain.js - 详细介绍和对比不同的实现 - CNN、RNN、DNN、FFNN -无需准备环境打开浏览器即可测试运行-支持WebGPU加速
本文介绍了如何使用 JavaScript 神经网络库 **Brain.js** 实现不同类型的神经网络,包括前馈神经网络(FFNN)、深度神经网络(DNN)和循环神经网络(RNN)。通过简单的示例和代码,帮助前端开发者快速入门并理解神经网络的基本概念。文章还对比了各类神经网络的特点和适用场景,并简要介绍了卷积神经网络(CNN)的替代方案。
580 1

热门文章

最新文章