广告
返回顶部
首页 > 资讯 > 前端开发 > node.js >Nodejs如何复制文件
  • 372
分享到

Nodejs如何复制文件

文件Nodejs 2022-06-04 17:06:01 372人浏览 薄情痞子
摘要

前端童鞋都知道,javascript是没有权限操作磁盘文件的,server童鞋一向都很鄙视。但是nodejs可谓让咱们前端扬眉吐气啊,最近在学node,其强大的功能让人异常激动和兴奋。今天就学习了它怎么读写

前端童鞋都知道,javascript是没有权限操作磁盘文件的,server童鞋一向都很鄙视。但是nodejs可谓让咱们前端扬眉吐气啊,最近在学node,其强大的功能让人异常激动和兴奋。今天就学习了它怎么读写文件。

首先需要引入fs模块,这是nodejs自带的。

var fs=require("fs");
具体可参考Nodejs apihttp://www.w3cfuns.com/tools.php?mod=booknodejs

主要用到了两个方法:

1、fs.readFile(filename, [encoding], [callback])

这是异步读取文件,filename是文件路径,encoding是编码格式,callback是回调函数。

异步读取一个文件的所有内容,例子如下:


fs.readFile('/etc/passwd', function (err, data) {
 if (err) throw err;
 console.log(data);
});

这里我使用的是本地测试文件:


function readFile(){
  console.log('--------开始读取文件--------');
  var fs = require('fs');
  fs.readFile('test.txt', 'utf-8', function(err, data) {
    if (err) {
      console.log("读取失败");
    } else {
      console.log(data);
      return data;
    }
  });
  console.log('--------读取结束--------');
}

2、fs.writeFile(filename, data, encoding='utf8', [callback])
写文件:


function writeFile(data){
  fs.writeFile("test2.txt",data,function(error){
    if(error){
      throw error;
    }else{
      console.log("文件已保存");  
    }
  });
}

错误代码:copyFile.js文件


var fs=require("fs");
function readFile(){
  console.log('--------开始读取文件--------');
  var fs = require('fs');
  fs.readFile('test.txt', 'utf-8', function(err, data) {
    if (err) {
      console.log("读取失败");
    } else {
      console.log(data);
      return data;
    }
  });
  console.log('--------读取结束--------');
}

function writeFile(data){
  fs.writeFile("test2.txt",data,function(error){
    if(error){
      throw error;
    }else{
      console.log("文件已保存");  
    }
  });
}
function copyFile(){
  var txt=readFile();
  writeFile(txt);
}
copyFile();

在终端运行node copyFile.js结果如下:

查看图片

注意事项:

1、文件编码,开始的时候我直接在本地新建一个txt文档,读取的时候发现结果始终是aaaaaaa这样的,结果发现用编辑打开是时候里面是乱码,其次,最好带上encoding,否则它会按照buffer读取。

2、同步执行问题。

上面的代码是有问题的,我把读取文件和写入文件方法分开写的,本来是想把test.txt文件中的内容复制到test2.txt,但是读取文件是异步执行的,也就是说谁也不知道它何年马月执行完毕,所以test.txt得到的结果是undefined。

正确的方法应该是读取完毕后执行写入文件:


var fs=require("fs");
function copyFile(){
  console.log('--------开始读取文件--------');
  var fs = require('fs');
  fs.readFile('test.txt', 'utf-8', function(err, data) {
    if (err) {
      console.log("读取失败");
    } else {
      writeFile(data)
      return data;
    }
  });
  console.log('--------读取结束--------');
}

function writeFile(data){
  console.log(data);
  fs.writeFile("test2.txt",data,'utf8',function(error){
    if(error){
      throw error;
    }else{
      console.log("文件已保存");  
    }
  });
}

copyFile();

以上就是本文的全部内容,希望对大家的学习有所帮助。

--结束END--

本文标题: Nodejs如何复制文件

本文链接: https://www.lsjlt.com/news/13050.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Nodejs如何复制文件
    前端童鞋都知道,javascript是没有权限操作磁盘文件的,server童鞋一向都很鄙视。但是nodejs可谓让咱们前端扬眉吐气啊,最近在学node,其强大的功能让人异常激动和兴奋。今天就学习了它怎么读写...
    99+
    2022-06-04
    文件 Nodejs
  • Nodejs 复制文件/文件夹的方法
    1.使用fs复制文件 使用fs对象的readFileSync,writeFileSync方法进行读写操作复制 cp.js function copyIt(from, to) { fs.writeFi...
    99+
    2022-06-04
    文件夹 文件 方法
  • Nodejs中怎么复制文件和文件夹
    Nodejs中怎么复制文件和文件夹,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。1.使用fs复制文件使用fs对象的readFileSync...
    99+
    2022-10-19
  • python如何复制文件
    使用python复制文件的方法:1.新建python项目;2.导入os和shutil模块;3.使用os.chdir()方法获取文件夹对象;4.使用shutil.copy()方法复制文件;具体步骤如下:首先,打开python,并新建一个pyt...
    99+
    2022-10-22
  • win11如何复制文件
    这篇文章主要介绍“win11如何复制文件”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“win11如何复制文件”文章能帮助大家解决问题。方法一: 首先找到我们想要复制的文件,右键选中它。 然后在右键菜...
    99+
    2023-07-01
  • nodejs如何删除文件
    小编给大家分享一下nodejs如何删除文件,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! 方法:1、...
    99+
    2022-10-19
  • nodejs如何删文件夹
    这篇文章主要介绍“nodejs如何删文件夹”,在日常操作中,相信很多人在nodejs如何删文件夹问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”nodejs如何删文件夹”的疑惑...
    99+
    2022-10-19
  • nodejs如何创建文件
    这篇文章主要介绍了nodejs如何创建文件,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。nodejs创建文件的方法:首先创建一个前端示例文件;然后通过NodeJS中的fs核心...
    99+
    2023-06-06
  • Python中如何复制文件
    今天就跟大家聊聊有关Python中如何复制文件,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1. Shutil Copyfile()方法该方法只有在目标可写时才将源的内容复制到目的地...
    99+
    2023-06-17
  • ubuntu中如何复制文件
    ubuntu中复制文件的方法:1、打开ubuntu终端;2、在命令行中输入“cp 复制文件名 新文件名”命令的方式进行复制文件即可。具体操作方法如下:在ubuntu系统桌面中使用快捷键【Ctrl+Alt+T】打开ubuntu终端命令行模式。...
    99+
    2022-10-04
  • centos7中如何复制文件
    centos7中复制文件的方法:1、打开centos7终端;2、在命令行中输入“cp 复制文件名 新文件名”命令的方式进行复制文件即可。具体操作方法如下:在centos7系统桌面中使用快捷键【Ctrl+Alt+T】打开centos7终端命令...
    99+
    2022-10-12
  • Java 实现文件复制及文件夹复制
    在Java中,有多种方法可以实现文件的复制。以下是几种常用的方式: 使用字节流进行复制: 通过FileInputStream和FileOutputStream分别创建源文件和目标文件的输入输出流,然后通过循环读取源文件内容,并将数据写入目标...
    99+
    2023-09-26
    java 开发语言
  • Nodejs中如何读写文件
    本篇内容主要讲解“Nodejs中如何读写文件”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Nodejs中如何读写文件”吧!操作文件是服务端一个基础的功能,也是做...
    99+
    2022-10-19
  • nodejs fs如何删除文件
    本篇内容主要讲解“nodejs fs如何删除文件”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“nodejs fs如何删除文件”吧! ...
    99+
    2022-10-19
  • 如何从ASM复制文件到文件系统
    本篇文章给大家分享的是有关如何从ASM复制文件到文件系统,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。版本10.2.0.51、使用RMAN:$...
    99+
    2022-10-19
  • 云主机如何复制文件
    云主机复制文件的方法:使用cp命令能复制文件和目录,同时借助某些选项,可以实现复制整个目录及对比两个文件的新旧而予以升级等功能,它的基本格式是cp [选项] 源文件 目标文件。具体内容如下:cp 命令的基本格式如下:[root@localh...
    99+
    2022-10-22
  • linux如何批量复制文件
    在Linux系统中,可以使用`cp`命令来复制文件。如果要批量复制多个文件,可以使用通配符来匹配多个文件,然后一次性复制。例如,要将...
    99+
    2023-08-21
    linux
  • nodejs如何修改文件内容
    这篇文章将为大家详细讲解有关nodejs如何修改文件内容,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 nodejs修改文件内容的方法:1、用...
    99+
    2022-10-19
  • nodejs如何指定入口文件
    今天小编给大家分享一下nodejs如何指定入口文件的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。默认入口文件当我们通过 no...
    99+
    2023-07-05
  • python 3.3 复制文件 或 文件
    import shutil import os import os.path #note:src's file unnecessary to be exist src="D:\\360Downloads\\testFile1\\fol...
    99+
    2023-01-31
    文件 python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作