XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet
公开
关注 0 Fork 0 Star 0
返回提交历史

XFEstudio/bilibili-API-collect

添加Rust版本bvid算法示例

dc5c527
stackinspector <stackinspector@126.com>
提交于

代码差异

1 个文件 +5 -2
Modified docs/other/bvid_desc.md +5 -2
@@ -405,7 +405,7 @@ const POW58: [u64; 10] = [
405 405 2207984167552, 128063081718016, 7427658739644928,
406 406 ];
407 407
408 pub fn av2bv(avid: u64) -> [u8; 10] {
408 fn av2bv(avid: u64) -> [u8; 10] {
409 409 let a = (avid ^ XORN) + ADDN;
410 410 let mut bvid = [0; 10];
411 411 for i in 0..10 {
@@ -414,11 +414,14 @@ pub fn av2bv(avid: u64) -> [u8; 10] {
414 414 bvid
415 415 }
416 416
417 pub fn bv2av(bvid: [u8; 10]) -> u64 {
417 fn bv2av(bvid: [u8; 10]) -> u64 {
418 418 let mut a = 0;
419 419 for i in 0..10 {
420 420 a += REV_TABLE[bvid[MAP[i]] as usize - 49] as u64 * POW58[i];
421 421 }
422 422 (a - ADDN) ^ XORN
423 423 }
424
425 // assert_eq!(*b"17x411w7KC", av2bv(170001));
426 // assert_eq!(170001, bv2av(*b"17x411w7KC"));
424 427 ```