buddhism/common/util.js
2025-08-14 11:22:53 +08:00

49 lines
1.2 KiB
JavaScript

const formatTime = date => {
const year = date.getFullYear()
const month = date.getMonth() + 1
const day = date.getDate()
const hour = date.getHours()
const minute = date.getMinutes()
const second = date.getSeconds()
return (
[year, month, day].map(formatNumber).join('/') +
' ' +
[hour, minute, second].map(formatNumber).join(':')
)
}
const formatNumber = n => {
n = n.toString()
return n[1] ? n : '0' + n
}
const fsm = wx.getFileSystemManager()
const FILE_BASE_NAME = 'tmp_base64src'
const base64src = function (base64data) {
return new Promise((resolve, reject) => {
const [, format, bodyData] = /data:image\/(\w+);base64,(.*)/.exec(base64data) || []
if (!format) {
reject(new Error('ERROR_BASE64SRC_PARSE'))
}
const filePath = `${wx.env.USER_DATA_PATH}/${FILE_BASE_NAME}.${format}`
const buffer = wx.base64ToArrayBuffer(bodyData)
fsm.writeFile({
filePath,
data: buffer,
encoding: 'binary',
success() {
resolve(filePath)
},
fail() {
reject(new Error('ERROR_BASE64SRC_WRITE'))
},
})
})
}
module.exports = {
formatTime: formatTime,
base64src,
}