2015-12-09 204 views
1

這樣做:緩衝區不會打印字符串

console.log('val is',val); 
console.log('val length is',val.length); 
console.log('val toString 2 is',val.toString('2')); 

打印此:

val is <Buffer 0f 00 f2 03 ac 01 00 00> 
val length is 8 

第三行不打印,出於某種原因。爲什麼會發生這種情況,我該如何解決?

編輯:我的部分愚蠢的問題。我通常通過一個函數來運行我的緩衝區,將函數編碼爲字符串,並且忘記爲此執行此操作。

+1

[Buffer.toString的第一個參數是一個編碼](https://nodejs.org/api/buffer.html#buffer_buf_tostring_encoding_start_end);我不認爲'2'是一個有效的編碼。 –

回答

2

根據docs,您需要將正確的編碼作爲第一個參數傳遞給toString。像asciiutf8