-1
如何將int/long轉換爲字節向量?我能想出的最好的是如何將int/long轉換爲字節向量?
packBits(intToBits(63758236), "raw")
有沒有辦法
- 做沒有轉換爲中間位?
- 指定結果字節的順序(LSB或MSB)?
如何將int/long轉換爲字節向量?我能想出的最好的是如何將int/long轉換爲字節向量?
packBits(intToBits(63758236), "raw")
有沒有辦法
嗯,這是有點醜,但我結束了寫這個
idToCacheId <- function(id) {
if (id > 0) {
x = rev(packBits(intToBits(id), "raw"))
return(gsub('=+', '', base64enc::base64encode(x[Position(function(x) x != 0, x):length(x)])))
} else
return("")
}
關於(1),如果你關心的是效率,這兩種功能是用C語言實現的(['intToBits']( https://github.com/wch/r-source/blob/af7f52f70101960861e5d995d3a4bec010bc89e6/src/main/raw.c#L124-L142),['packBits'](https://github.com/wch/r-source /blob/af7f52f70101960861e5d995d3a4bec010bc89e6/src/main/raw.c#L144-L194)),所以我不會擔心中間轉換太多。 – nrussell