• node 操作文件相关指令


    模块化
     
    模块内容
    let obj = {
    name: "lusy",
    hello:function(){
    console.log("你好你好!")
    }
    }
    //抛出一个模块
    module.exports = obj;
     
    // 导入引入的模块
     
    // const df = require("./moudle");//模块路径 .js可以省略
    // df.hello();
    // df.name;
     
     
     
    // fs是内置模块(一个内置模块都有2个方法 同步和异步的方法) 直接引入
     
    let fs = require("fs");
     
    // 读取目录的方法 (异步)  注:node中(异步回调)中 错误优先 err作为回调的第一个参数 默认为null
    // fs.readdir("./",(err,dirs) =>{
    // // 读取当前文件目录
    // if(err){
    // // 出现错误
    // console.log(err);
    // }else{
    // // 执行成功
    // console.log(dirs);
    // }
    // })
    // null为真 则出现错误 为假则无误 执行成功
     
     
    // 读取文件 读取文件中的内容
    // 如果没有指定 encoding,则返回原始的 buffer
    // 我们这里将文件内容(data)转为字符串
    // fs.readFile("./moudle.js",(err,data)=>{
    // if(err) throw err;
    // console.log(data.toString());
    // })
     
    // 同步读取文件的方法 同步没有回调函数  try catch 就是防止程序出错 下面代码终止 用它以后后面还会继续执行
     
    // 写一个错误的语句
    // try{
    // let dirs = fs.readFileSync("./");//当前所在是一个目录文件夹 这里写的读取文件方法 故错
    // }catch(err){
    // console.log(err)
    // }
    // console.log("前面错了 我还能执行!")
     
    // 创建文件夹的方法 只能一级一级的创建 不能同时建一个文件夹和文件
    // fs.mkdir("./dir1",(err)=>{
    // // throw new Error ("出错了") 抛出一个错误 并终止代码执行
    // if(err){
    // console.log(err);
    // }else{
    // console.log("create ok");
    // }
    // })
     
    // 例子 创建一个文件夹 文件夹可能存在
    // 思路:先读取文件夹 如果没有同名的文件夹就直接创建 如果有同名的文件夹 就先删除再创建
    // function createDir(name){
    // fs.readdir("./",(err,dirs)=>{
    // // dirs是目录中的文件名的数组,名字自己定义 第二个参数就表示目录中的文件名的数组
    // // 如果没有在读取的文件夹中找到同名文件夹
    // if(dirs.indexOf(name) == -1){
    // fs.mkdir(`./${name}`,(err)=>{
    // // name文件夹名是一个变量 这里用字符串拼接方式表示变量
    // if(!err){
    // console.log("创建成功")
    // }
    // })
    // }else{
    // // 存在同名文件夹的情况
    // fs.rmdir(`./${name}`,(err)=>{
    // if(err){throw new Error("删除失败")}
    // fs.mkdir(`./${name}`,(err)=>{
    // if(!err){
    // console.log("创建成功");
    // }
    // })
    // })
    // }
    // })
    // }
    // createDir("new")
     
    // // 删除文件夹
    // fs.rmdir("./dir1",(err)=>{
    // if(err){
    // console.log(err);
    // }else{
    // console.log("删除成功");
    // }
    // })
     
    // 创建文件 (写入文件)
    // fs.writeFile('./1.txt','写入的内容',(err)=>{
    // if (err) throw err
    // console.log("写入成功")
    // })
    // 修改时 是覆盖写入 不覆盖前面内容 就使用追加写入
    // fs.appendFile('./1.txt','!追加的内容',(err)=>{
    // if (err) throw err
    // console.log("追加成功")
    // })
     
    // // 读取txt中的内容
    // fs.readFile('./1.txt','utf-8',(err,content)=>{
    // if (err) throw err
    // console.log(content)
    // // 不加utf-8 回来的数据就是buffer格式 所以加一下 转字符串 或者直接 content.toString()
    // })
     
    // // 删除一个文件
    // fs.unlink('./del.txt',(err)=>{
    // console.log(err);
    // })
     
    // 获取文件夹或文件的信息
    // fs.stat 对象提供有关文件的信息
    fs.stat("./",(err,state)=>{
    console.log(state)
    console.log(state.isDirectory())// true 是不是一个文件夹
    console.log(state.isFile())// false 是不是一个文件 ./ 是当前所在文件夹
    })
     
  • 相关阅读:
    第一次站立会议
    电梯会议的相关视频
    软件需求分析--NABCD
    05需求工程软件建模与分析阅读笔记之五
    04需求工程软件建模与分析阅读笔记之四
    03需求工程软件建模与分析阅读笔记之三
    02需求工程软件建模与分析阅读笔记之二
    jsp+javabean+servlet实现简单的登录
    账户分析系统需求分析
    01需求工程软件建模与分析阅读笔记之一
  • 原文地址:https://www.cnblogs.com/lucktomiao/p/10427639.html
Copyright © 2020-2023  润新知