日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > HTML >内容正文

HTML

chrome html 读写文件路径,Chrome浏览器支持直接读写本地文件了

發布時間:2025/3/11 HTML 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 chrome html 读写文件路径,Chrome浏览器支持直接读写本地文件了 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文首發于公眾號:符合預期的CoyPan

寫在前面

最新版的Chrome(Chrome 83, 須要開啟權限)支持直接讀寫本地文件了。javascript

開啟方法:Chrome瀏覽器升級到83版本以上;訪問chrome://flags/,開啟 Native File System API 選項

當前如何讀寫本地文件

目前最多見的讀取本地文件方法:html

一、使用input標簽獲取文件File對象。java

二、使用FileReader讀取文件。web

var reader = new FileReader();

reader.onload = function (event) {

// event.target.result就是讀取的內容

...

};

// 這里的file為File對象實例

reader.readAsText(file);

// reader.readAsDataURL(file);

// reader.readAsArrayBuffer(file);

寫文件方法:chrome

很遺憾,如今沒有直接寫文件到本地的方法。不過,大概能夠用下面的方法來實現:api

var textFileAsBlob = new Blob(['hello word'], {type:'text/plain'});

var downloadLink = document.createElement("a");

downloadLink.download = 'test.txt';

downloadLink.href = window.URL.createObjectURL(textFileAsBlob);

downloadLink.click();

最新的Chrome瀏覽器下,如何讀寫文件

讀文件瀏覽器

使用window.chooseFileSystemEntries這個api。須要注意的是,調用這個api,必須由用戶的操做觸發,好比點擊等。app

// 文件句柄

let fileHandle;

button.addEventListener('click', async (e) => {

fileHandle = await window.chooseFileSystemEntries();

console.log(fileHandle);

});

調用api后,會彈出文件窗口,用戶選擇文件后,就能夠拿到文件的句柄了。async

接著,調用句柄的方法,就能夠拿到文件內容了。spa

let fileHandle;

button.addEventListener('click', async (e) => {

fileHandle = await window.chooseFileSystemEntries();

const file = await globalFileHandle.getFile();

const contents = await file.text(); // 這里的方法還有:slice(), stream(), arrayBuffer()

});

寫文件

寫文件,分紅兩種狀況,一種是直接寫入原文件,一種是寫入一個新文件。

寫入原文件,咱們只須要拿到原文件的句柄,調用句柄的方法就能夠了。

const writable = await fileHandle.createWritable();

await writable.write('new content');

await writable.close();

寫入新文件,首先須要新建一個文件,依然是調用window.chooseFileSystemEntries這個api,不過此次須要傳入一些參數。

button.addEventListener('click', async function() {

const opts = {

type: 'save-file',

accepts: [{

description: 'Text file',

extensions: ['txt'],

mimeTypes: ['text/plain'],

}]

};

// 新建文件的句柄

const fileHandle = await window.chooseFileSystemEntries(opts);

...

});

接著,再按照前文的方法,寫入內容便可。

示例Demo

新的文件Api十分方便。我簡單寫了一個demo,在瀏覽器編輯本地文件。

Demo體驗地址和代碼在這里(請使用最新版的桌面Chrome瀏覽器訪問,且開啟文件讀寫權限):

寫在后面

Chrome這一波更新,你怎么看?web app ?web os?

總結

以上是生活随笔為你收集整理的chrome html 读写文件路径,Chrome浏览器支持直接读写本地文件了的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。