使用JS將字符串保存成文件到本地(.txt、.json、.md)
更新時間:2023年06月15日 14:32:53 作者:一顆不甘墜落的流星
工作中有時需要通過JavaScript保存文件到本地,下面這篇文章主要給大家介紹了關(guān)于使用JS將字符串保存成文件到本地的相關(guān)資料,分別包括生成.txt、.json、.md等文件,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
一、生成 TXT 文件
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>保存文件</title>
</head>
<body>
<button type="button" id="button"> 保存文件</button>
<script type="text/javascript">
window.onload = function(event) {
main()
}
function main() {
// 獲取按鈕
const button = document.getElementById('button')
// 給按鈕添加點擊事件
button.onclick = () => {
// 要保存的字符串
const stringData = '一段文本.'
// dada 表示要轉(zhuǎn)換的字符串?dāng)?shù)據(jù),type 表示要轉(zhuǎn)換的數(shù)據(jù)格式
const blob = new Blob([stringData], {
type: "text/plain;charset=utf-8"
})
// 根據(jù) blob生成 url鏈接
const objectURL = URL.createObjectURL(blob)
// 創(chuàng)建一個 a 標(biāo)簽Tag
const aTag = document.createElement('a')
// 設(shè)置文件的下載地址
aTag.href = objectURL
// 設(shè)置保存后的文件名稱
aTag.download = "文本文件.txt"
// 給 a 標(biāo)簽添加點擊事件
aTag.click()
// 釋放一個之前已經(jīng)存在的、通過調(diào)用 URL.createObjectURL() 創(chuàng)建的 URL 對象。
// 當(dāng)你結(jié)束使用某個 URL 對象之后,應(yīng)該通過調(diào)用這個方法來讓瀏覽器知道不用在內(nèi)存中繼續(xù)保留對這個文件的引用了。
URL.revokeObjectURL(objectURL)
}
}
</script>
</body>
</html>二、生成 JSON 文件
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>保存文件</title>
</head>
<body>
<button type="button" id="button"> 保存文件</button>
<script type="text/javascript">
window.onload = function(event) {
main()
}
function main() {
// 獲取按鈕
const button = document.getElementById('button')
// 給按鈕添加點擊事件
button.onclick = () => {
// 要保存的字符串, 需要先將數(shù)據(jù)轉(zhuǎn)成字符串
const stringData = JSON.stringify([{name: "張三",age: 18}], null, 2)
// dada 表示要轉(zhuǎn)換的字符串?dāng)?shù)據(jù),type 表示要轉(zhuǎn)換的數(shù)據(jù)格式
const blob = new Blob([stringData], {
type: 'application/json'
})
// 根據(jù) blob生成 url鏈接
const objectURL = URL.createObjectURL(blob)
// 創(chuàng)建一個 a 標(biāo)簽Tag
const aTag = document.createElement('a')
// 設(shè)置文件的下載地址
aTag.href = objectURL
// 設(shè)置保存后的文件名稱
aTag.download = "json文件.json"
// 給 a 標(biāo)簽添加點擊事件
aTag.click()
// 釋放一個之前已經(jīng)存在的、通過調(diào)用 URL.createObjectURL() 創(chuàng)建的 URL 對象。
// 當(dāng)你結(jié)束使用某個 URL 對象之后,應(yīng)該通過調(diào)用這個方法來讓瀏覽器知道不用在內(nèi)存中繼續(xù)保留對這個文件的引用了。
URL.revokeObjectURL(objectURL)
}
}
</script>
</body>
</html>三、生成 Markdown 文件
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>保存文件</title>
</head>
<body>
<button type="button" id="button"> 保存文件</button>
<script type="text/javascript">
window.onload = function(event) {
main()
}
function main() {
// 獲取按鈕
const button = document.getElementById('button')
// 給按鈕添加點擊事件
button.onclick = () => {
// 要保存的字符串
const stringData = '# 一級標(biāo)題\n## 二級標(biāo)題'
// dada 表示要轉(zhuǎn)換的字符串?dāng)?shù)據(jù),type 表示要轉(zhuǎn)換的數(shù)據(jù)格式
const blob = new Blob([stringData], {
type: 'text/markdown'
})
// 根據(jù) blob生成 url鏈接
const objectURL = URL.createObjectURL(blob)
// 創(chuàng)建一個 a 標(biāo)簽Tag
const aTag = document.createElement('a')
// 設(shè)置文件的下載地址
aTag.href = objectURL
// 設(shè)置保存后的文件名稱
aTag.download = "markdown文件.md"
// 給 a 標(biāo)簽添加點擊事件
aTag.click()
// 釋放一個之前已經(jīng)存在的、通過調(diào)用 URL.createObjectURL() 創(chuàng)建的 URL 對象。
// 當(dāng)你結(jié)束使用某個 URL 對象之后,應(yīng)該通過調(diào)用這個方法來讓瀏覽器知道不用在內(nèi)存中繼續(xù)保留對這個文件的引用了。
URL.revokeObjectURL(objectURL)
}
}
</script>
</body>
</html>總結(jié)
到此這篇關(guān)于使用JS將字符串保存成文件到本地的文章就介紹到這了,更多相關(guān)JS字符串保存成文件到本地內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Google Map V3 綁定氣泡窗口(infowindow)Dom事件實現(xiàn)代碼
無法在infowindow里面添加的div進(jìn)行綁定事件處理,官方的API,發(fā)現(xiàn)了google.maps.InfoWindow下面的Events里面有個domready事件2013-04-04
javascript 實現(xiàn)動態(tài)側(cè)邊欄實例詳解
這篇文章主要介紹了javascript 實現(xiàn)動態(tài)側(cè)邊欄實例詳解的相關(guān)資料,并附實例代碼,幫助大家學(xué)習(xí)理解,需要的朋友可以參考下2016-11-11
Three.js利用orbit controls插件(軌道控制)控制模型交互動作詳解
這篇文章主要給大家介紹了關(guān)于Three.js利用orbit controls插件,也就是軌道控制來控制模型交互動作的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。2017-09-09

