前端中常見字節編碼(base64、hex、utf8)及其轉換


/*
* 字節編碼轉換
* 首先都需要轉為二級制數組 (ArrayBuffer)
* 然后才能轉換對應的編碼字符
* 前端常見編碼:
* base64:就是將二進制轉為字符串,將每6個字節轉為一個特定的字符串(A-Za-z0-9/+=)。
* hex:將二進制每8個字節轉為對應的2個十六進制的字符串
* */

// utf8 轉為 base64/hex
let output = Buffer.from('utf8的字符串', 'utf8')
console.log(output.toString('base64'))
console.log(output.toString('hex'))


// base64/hex 轉為 utf8
output = Buffer.from('75746638e79a84e5ad97e7aca6e4b8b2', 'hex')
console.log(output.toString('utf8'))
output = Buffer.from('dXRmOOeahOWtl+espuS4sg==', 'base64')
console.log(output.toString('utf8'))


// 讀取文件傳入編碼
input = fs.readFileSync('test.txt')  // 默認是二進制 Buffer
console.log(input)
let input = fs.readFileSync('test.txt', 'utf8')
console.log(input)
input = fs.readFileSync('test.txt', 'base64')
console.log(input)
input = fs.readFileSync('test.txt', 'hex')
console.log(input)

  

 

/*
* 加密需注意
* 加密數據類型:Buffer 或者 字符串(hex/base64/utf8)
* 參數傳入參數:vi - 填充
* 參數傳入參數:mode - 模式
* 參數傳入參數:padding - 填充類型
* 加密輸出類型:Buffer 或者 字符串(hex/base64/utf8)
* */

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM