js实现浏览本地文件并显示扩展名的方法

yizhihongxing

要实现浏览本地文件并显示扩展名的方法,需要使用HTML5 File API和JavaScript。下面是具体步骤:

  1. 创建html模板,添加文件输入框
<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>浏览本地文件</title>
  </head>
  <body>
    <input type="file" id="file-input">
    <pre id="file-contents"></pre>
  </body>
</html>

2.编写JavaScript代码,监听文件输入框,显示文件名和扩展名

const fileInput = document.querySelector('input[type="file"]');
const fileContent = document.getElementById('file-contents'); 

fileInput.addEventListener('change', (event) => {
    const file = event.target.files[0]; // 获取选择的文件
    const fileName = file.name; // 文件名
    const extension = fileName.split('.').pop(); // 扩展名
    fileContent.textContent = `文件名:${fileName},扩展名:${extension}`; // 将文件名和扩展名显示在内容框内
});
  1. 需要注意的是,浏览本地文件对接口的操作是异步的,因此我们需要用FileReader来读取文件内容和异步处理。在上述change事件的回调函数中,将以下代码添加:
const fileReader = new FileReader(); // 创建一个FileReader对象
fileReader.readAsText(file); // 读取文件内容
fileReader.onload = () => {
    const contents = fileReader.result; // 文件内容
    fileContent.textContent = `文件名:${fileName},扩展名:${extension},内容:${contents}`; // 将文件名、扩展名和内容显示在内容框内
}

示例1:使用readAsDataURL方法读取文件并显示在页面上

const fileInput = document.querySelector('input[type="file"]');
const fileContent = document.getElementById('file-contents'); 

fileInput.addEventListener('change', (event) => {
    const file = event.target.files[0]; // 获取选择的文件
    const fileName = file.name; // 文件名
    const extension = fileName.split('.').pop(); // 扩展名

    // 读取文件内容并显示在页面上
    const fileReader = new FileReader();
    fileReader.readAsDataURL(file);
    fileReader.onload = () => {
        const contents = fileReader.result;
        fileContent.innerHTML = `
            <p>文件名:${fileName}</p>
            <p>扩展名:${extension}</p>
            <p>内容:</p>
            <img src="${contents}" alt="${fileName}">
        `;
    }
});

示例2:将文件以文本形式保存在浏览器本地存储中

const fileInput = document.querySelector('input[type="file"]');
const fileContent = document.getElementById('file-contents'); 

fileInput.addEventListener('change', (event) => {
    const file = event.target.files[0]; // 获取选择的文件
    const fileName = file.name; // 文件名
    const extension = fileName.split('.').pop(); // 扩展名

    // 读取文件内容并以文本形式保存在浏览器本地存储中
    const fileReader = new FileReader();
    fileReader.readAsText(file);
    fileReader.onload = () => {
        const contents = fileReader.result;
        localStorage.setItem(fileName, contents); // 保存在localStorage中
        fileContent.innerHTML = `
            <p>文件名:${fileName}</p>
            <p>扩展名:${extension}</p>
            <p>内容:</p>
            <pre>${contents}</pre>
        `;
    }
});

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js实现浏览本地文件并显示扩展名的方法 - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • 基于JavaScript 声明全局变量的三种方式详解

    当我们需要在JavaScript中定义一个全局变量时,我们可以使用以下三种方式: 1. 在全局作用域下声明变量 第一种方式是直接在全局作用域中声明变量,这样的变量就会成为全局变量。 // 直接在全局作用域中声明变量,成为全局变量 var globalVariable = ‘我是全局变量’; 上述代码中,使用 var 关键字直接声明一个变量 globalVar…

    JavaScript 2023年5月28日
    00
  • vue之el-form表单校验以及常用正则详解

    Vue之el-form表单校验以及常用正则详解 前言 在前后端分离的web开发中,前端负责数据的采集、交互等操作。在web表单中,数据的准确性、合法性都需要得到保障,因此加入表单校验机制,不仅可以规范数据的格式,降低后端的数据处理难度,也能增强用户的体验感。 Vue是一套渐进式的JavaScript框架,本文主要介绍Vue中的表单校验以及常用正则的运用。 e…

    JavaScript 2023年6月10日
    00
  • javascript函数的四种调用模式

    下面是关于“JavaScript函数的四种调用模式”的完整攻略,分别是方法调用模式、函数调用模式、构造器调用模式和apply/call调用模式。 方法调用模式 当一个函数被定义为一个对象的属性时,该函数被称为一个方法。当使用对象的属性名调用该函数时,该函数内的this关键字将被绑定到该对象。 示例: let obj = { name: ‘Tom’, sayH…

    JavaScript 2023年5月27日
    00
  • 使用js修改客户端注册表的方法

    使用js修改客户端注册表的方法需要借助于ActiveXObject对象及其子对象WScript.Shell。具体方法如下: 创建WScript.Shell对象 需要先创建 WScript.Shell 对象,可以使用以下代码。 var WshShell = new ActiveXObject("WScript.Shell"); 使用 Wsh…

    JavaScript 2023年6月11日
    00
  • 详解JavaScript 高阶函数

    详解JavaScript 高阶函数 什么是高阶函数? 高阶函数是指接受函数作为参数,或返回一个函数作为返回值的函数。 JavaScript 中函数是一等公民,既可以被当做普通的数据类型进行传递,同时也可以作为返回值,这使得高阶函数成为了 JavaScript 中非常重要的一个概念。 通过高阶函数,我们可以实现非常灵活的代码设计,封装一些通用的操作,让代码变得…

    JavaScript 2023年5月27日
    00
  • javascript 使用sleep函数的常见方法详解

    让我来详细讲解一下 “javascript 使用sleep函数的常见方法详解” 的完整攻略。 什么是sleep函数? 在JavaScript中,本质上并没有自带的sleep函数。它是一种同步执行的函数,能够在程序执行到该函数时阻塞线程一段时间,然后再继续执行。 常见的sleep实现方法 在JavaScript中实现sleep函数的方法有很多,这里介绍两个常见…

    JavaScript 2023年5月27日
    00
  • Javascript下判断是否为闰年的Datetime包

    要判断一个年份是否为闰年,一般需要满足以下两个条件中的一个或者同时满足: 年份能被4整除,但不能被100整除。 年份能被400整除。 我们可以使用JavaScript中的Datetime库的相关API实现闰年的判断。 首先,我们需要安装datetime包。在命令行中执行以下命令: npm install datetime 接下来,我们来演示两个不同的Java…

    JavaScript 2023年5月27日
    00
  • JS正则表达式详解及身份证号码验证(简易版)

    JS正则表达式详解及身份证号码验证(简易版)是一篇详细讲解JavaScript的正则表达式和如何使用正则表达式去验证身份证号码的文章。本文主要分为以下几个部分: 正则表达式入门基础 本部分主要介绍正则表达式的基本概念和常用语法。 正则表达式是一组特殊字符和字符序列,组成规则是通过这些字符和序列来描述文本模式。比如,我们可以使用正则表达式来搜索特定模式的文本,…

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部