Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
wangzishuai5499
js-xlsx
提交
503fe89f
J
js-xlsx
项目概览
wangzishuai5499
/
js-xlsx
与 Fork 源项目一致
从无法访问的项目Fork
通知
8
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
J
js-xlsx
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
未验证
提交
503fe89f
编写于
6月 30, 2020
作者:
B
Barron Wei
提交者:
GitHub
6月 30, 2020
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
check first 8 bytes for CFB in readSync (#2038)
fix range for base64
上级
768e1bdc
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
5 addition
and
5 deletion
+5
-5
bits/87_read.js
bits/87_read.js
+5
-5
未找到文件。
bits/87_read.js
浏览文件 @
503fe89f
function
firstbyte
(
f
/*:RawData*/
,
o
/*:?TypeOpts*/
)
/*:Array<number>*/
{
var
x
=
""
;
switch
((
o
||
{}).
type
||
"
base64
"
)
{
case
'
buffer
'
:
return
[
f
[
0
],
f
[
1
],
f
[
2
],
f
[
3
]];
case
'
base64
'
:
x
=
Base64
.
decode
(
f
.
slice
(
0
,
24
));
break
;
case
'
buffer
'
:
return
[
f
[
0
],
f
[
1
],
f
[
2
],
f
[
3
]
,
f
[
4
],
f
[
5
],
f
[
6
],
f
[
7
]
];
case
'
base64
'
:
x
=
Base64
.
decode
(
f
.
slice
(
0
,
12
));
break
;
case
'
binary
'
:
x
=
f
;
break
;
case
'
array
'
:
return
[
f
[
0
],
f
[
1
],
f
[
2
],
f
[
3
]];
case
'
array
'
:
return
[
f
[
0
],
f
[
1
],
f
[
2
],
f
[
3
]
,
f
[
4
],
f
[
5
],
f
[
6
],
f
[
7
]
];
default
:
throw
new
Error
(
"
Unrecognized type
"
+
(
o
&&
o
.
type
||
"
undefined
"
));
}
return
[
x
.
charCodeAt
(
0
),
x
.
charCodeAt
(
1
),
x
.
charCodeAt
(
2
),
x
.
charCodeAt
(
3
)];
return
[
x
.
charCodeAt
(
0
),
x
.
charCodeAt
(
1
),
x
.
charCodeAt
(
2
),
x
.
charCodeAt
(
3
)
,
x
.
charCodeAt
(
4
),
x
.
charCodeAt
(
5
),
x
.
charCodeAt
(
6
),
x
.
charCodeAt
(
7
)
];
}
function
read_cfb
(
cfb
/*:CFBContainer*/
,
opts
/*:?ParseOpts*/
)
/*:Workbook*/
{
...
...
@@ -82,7 +82,7 @@ function readSync(data/*:RawData*/, opts/*:?ParseOpts*/)/*:Workbook*/ {
if
(
!
vu
.
foo
)
{
o
=
dup
(
o
);
o
.
type
=
'
array
'
;
return
readSync
(
ab2a
(
d
),
o
);}
}
switch
((
n
=
firstbyte
(
d
,
o
))[
0
])
{
case
0xD0
:
return
read_cfb
(
CFB
.
read
(
d
,
o
),
o
)
;
case
0xD0
:
if
(
n
[
1
]
===
0xCF
&&
n
[
2
]
===
0x11
&&
n
[
3
]
===
0xE0
&&
n
[
4
]
===
0xA1
&&
n
[
5
]
===
0xB1
&&
n
[
6
]
===
0x1A
&&
n
[
7
]
===
0xE1
)
return
read_cfb
(
CFB
.
read
(
d
,
o
),
o
);
break
;
case
0x09
:
if
(
n
[
1
]
<=
0x04
)
return
parse_xlscfb
(
d
,
o
);
break
;
case
0x3C
:
return
parse_xlml
(
d
,
o
);
case
0x49
:
if
(
n
[
1
]
===
0x44
)
return
read_wb_ID
(
d
,
o
);
break
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录