forked from sheetjs/sheetjs
clarify Multiplan DOS support
This commit is contained in:
parent
f38191d266
commit
cfe4da2e56
1
.gitignore
vendored
1
.gitignore
vendored
@ -29,6 +29,7 @@ tmp
|
||||
*.[rR][tT][fF]
|
||||
*.[eE][tT][hH]
|
||||
*.[nN][uU][mM][bB][eE][rR][sS]
|
||||
*.[mM][oO][dD]
|
||||
*.123
|
||||
*.htm
|
||||
*.html
|
||||
|
@ -19,11 +19,12 @@ tmp
|
||||
*.[pP][dD][fF]
|
||||
*.[sS][lL][kK]
|
||||
*.socialcalc
|
||||
*.[xX][lL][sSwWcCaAtTmM]
|
||||
*.[xX][lL][sSwWcCaAtTmMrR]
|
||||
*.[xX][lL][sSaAtT][xXmMbB]
|
||||
*.[oO][dD][sS]
|
||||
*.[fF][oO][dD][sS]
|
||||
*.[xX][mM][lL]
|
||||
*.[xX][lL][mM][lL]
|
||||
*.[uU][oO][sS]
|
||||
*.[wW][kKqQbB][S1234567890]
|
||||
*.[qQ][pP][wW]
|
||||
@ -32,6 +33,7 @@ tmp
|
||||
*.[rR][tT][fF]
|
||||
*.[eE][tT][hH]
|
||||
*.[nN][uU][mM][bB][eE][rR][sS]
|
||||
*.[mM][oO][dD]
|
||||
*.123
|
||||
*.htm
|
||||
*.html
|
||||
|
14
README.md
14
README.md
@ -4061,7 +4061,7 @@ Despite the library name `xlsx`, it supports numerous spreadsheet file formats:
|
||||
| Excel 5.0/95 (XLS BIFF5) | ✔ | ✔ |
|
||||
| Excel 4.0 (XLS/XLW BIFF4) | ✔ | ✔ |
|
||||
| Excel 3.0 (XLS BIFF3) | ✔ | ✔ |
|
||||
| Excel 2.0/2.1 (XLS BIFF2) | ✔ | ✔ |
|
||||
| Excel 2.0/2.1 / Multiplan 4.x DOS (XLS BIFF2) | ✔ | ✔ |
|
||||
| **Excel Supported Text Formats** |:-----:|:-----:|
|
||||
| Delimiter-Separated Values (CSV/TXT) | ✔ | ✔ |
|
||||
| Data Interchange Format (DIF) | ✔ | ✔ |
|
||||
@ -4126,6 +4126,11 @@ the concept of a workbook (`XLW` files) but also had single-sheet `XLS` format.
|
||||
The structure is largely similar to the Lotus 1-2-3 file formats. BIFF5/8/12
|
||||
extended the format in various ways but largely stuck to the same record format.
|
||||
|
||||
Multiplan 4 "Normal" files are identical in structure to BIFF2 and use the same
|
||||
cell value records. There are some different record types for more advanced
|
||||
features like Print Settings. The BIFF2 writer generates files that can be read
|
||||
in Multiplan 4 and the parser can extract values from "Normal" files.
|
||||
|
||||
There is no official specification for any of these formats. Excel 95 can write
|
||||
files in these formats, so record lengths and fields were determined by writing
|
||||
in all of the supported formats and comparing files. Excel 2016 can generate
|
||||
@ -4252,11 +4257,8 @@ reader understands DBF Level 7 extensions like DATETIME.
|
||||
|
||||
- **Symbolic Link (SYLK)**
|
||||
|
||||
There is no real documentation. All knowledge was gathered by saving files in
|
||||
various versions of Excel to deduce the meaning of fields. Notes:
|
||||
|
||||
- Plain formulae are stored in the RC form.
|
||||
- Column widths are rounded to integral characters.
|
||||
<https://oss.sheetjs.com/notes/sylk/> is an informal specification based on our
|
||||
experimentation and previous documentation efforts.
|
||||
|
||||
- **Lotus Formatted Text (PRN)**
|
||||
|
||||
|
@ -1319,6 +1319,16 @@ var XLSRecordEnum = {
|
||||
/*::[*/0x08cb/*::]*/: { /* n:"CrtCoopt", */ },
|
||||
/*::[*/0x08d6/*::]*/: { /* n:"FRTArchId$", */ r:12 },
|
||||
|
||||
/* --- multiplan 4 records --- */
|
||||
/*::[*/0x0065/*::]*/: { /* n:"", */ }, // one per window
|
||||
/*::[*/0x0066/*::]*/: { /* n:"", */ }, // calc settings
|
||||
/*::[*/0x0069/*::]*/: { /* n:"", */ }, // print header
|
||||
/*::[*/0x006a/*::]*/: { /* n:"", */ }, // print footer
|
||||
/*::[*/0x006b/*::]*/: { /* n:"", */ }, // print settings
|
||||
/*::[*/0x006d/*::]*/: { /* n:"", */ }, // one per window
|
||||
/*::[*/0x0070/*::]*/: { /* n:"", */ }, // includes default col width
|
||||
/*::[*/0x0072/*::]*/: { /* n:"", */ }, // includes selected cell
|
||||
|
||||
/*::[*/0x7262/*::]*/: {}
|
||||
};
|
||||
|
||||
|
@ -107,6 +107,11 @@ function readSync(data/*:RawData*/, opts/*:?ParseOpts*/)/*:Workbook*/ {
|
||||
case 0x7B: if(n[1] === 0x5C && n[2] === 0x72 && n[3] === 0x74) return RTF.to_workbook(d, o); break;
|
||||
case 0x0A: case 0x0D: case 0x20: return read_plaintext_raw(d, o);
|
||||
case 0x89: if(n[1] === 0x50 && n[2] === 0x4E && n[3] === 0x47) throw new Error("PNG Image File is not a spreadsheet"); break;
|
||||
case 0x08: if(n[1] === 0xE7) throw new Error("Unsupported Multiplan 1.x file!"); break;
|
||||
case 0x0C:
|
||||
if(n[1] === 0xEC) throw new Error("Unsupported Multiplan 2.x file!");
|
||||
if(n[1] === 0xED) throw new Error("Unsupported Multiplan 3.x file!");
|
||||
break;
|
||||
}
|
||||
if(DBF_SUPPORTED_VERSIONS.indexOf(n[0]) > -1 && n[2] <= 12 && n[3] <= 31) return DBF.to_workbook(d, o);
|
||||
return read_prn(data, d, o, str);
|
||||
|
@ -12,7 +12,7 @@ Despite the library name `xlsx`, it supports numerous spreadsheet file formats:
|
||||
| Excel 5.0/95 (XLS BIFF5) | ✔ | ✔ |
|
||||
| Excel 4.0 (XLS/XLW BIFF4) | ✔ | ✔ |
|
||||
| Excel 3.0 (XLS BIFF3) | ✔ | ✔ |
|
||||
| Excel 2.0/2.1 (XLS BIFF2) | ✔ | ✔ |
|
||||
| Excel 2.0/2.1 / Multiplan 4.x DOS (XLS BIFF2) | ✔ | ✔ |
|
||||
| **Excel Supported Text Formats** |:-----:|:-----:|
|
||||
| Delimiter-Separated Values (CSV/TXT) | ✔ | ✔ |
|
||||
| Data Interchange Format (DIF) | ✔ | ✔ |
|
||||
@ -77,6 +77,11 @@ the concept of a workbook (`XLW` files) but also had single-sheet `XLS` format.
|
||||
The structure is largely similar to the Lotus 1-2-3 file formats. BIFF5/8/12
|
||||
extended the format in various ways but largely stuck to the same record format.
|
||||
|
||||
Multiplan 4 "Normal" files are identical in structure to BIFF2 and use the same
|
||||
cell value records. There are some different record types for more advanced
|
||||
features like Print Settings. The BIFF2 writer generates files that can be read
|
||||
in Multiplan 4 and the parser can extract values from "Normal" files.
|
||||
|
||||
There is no official specification for any of these formats. Excel 95 can write
|
||||
files in these formats, so record lengths and fields were determined by writing
|
||||
in all of the supported formats and comparing files. Excel 2016 can generate
|
||||
@ -203,11 +208,8 @@ reader understands DBF Level 7 extensions like DATETIME.
|
||||
|
||||
- **Symbolic Link (SYLK)**
|
||||
|
||||
There is no real documentation. All knowledge was gathered by saving files in
|
||||
various versions of Excel to deduce the meaning of fields. Notes:
|
||||
|
||||
- Plain formulae are stored in the RC form.
|
||||
- Column widths are rounded to integral characters.
|
||||
<https://oss.sheetjs.com/notes/sylk/> is an informal specification based on our
|
||||
experimentation and previous documentation efforts.
|
||||
|
||||
- **Lotus Formatted Text (PRN)**
|
||||
|
||||
|
@ -3836,7 +3836,7 @@ Despite the library name `xlsx`, it supports numerous spreadsheet file formats:
|
||||
| Excel 5.0/95 (XLS BIFF5) | ✔ | ✔ |
|
||||
| Excel 4.0 (XLS/XLW BIFF4) | ✔ | ✔ |
|
||||
| Excel 3.0 (XLS BIFF3) | ✔ | ✔ |
|
||||
| Excel 2.0/2.1 (XLS BIFF2) | ✔ | ✔ |
|
||||
| Excel 2.0/2.1 / Multiplan 4.x DOS (XLS BIFF2) | ✔ | ✔ |
|
||||
| **Excel Supported Text Formats** |:-----:|:-----:|
|
||||
| Delimiter-Separated Values (CSV/TXT) | ✔ | ✔ |
|
||||
| Data Interchange Format (DIF) | ✔ | ✔ |
|
||||
@ -3899,6 +3899,11 @@ the concept of a workbook (`XLW` files) but also had single-sheet `XLS` format.
|
||||
The structure is largely similar to the Lotus 1-2-3 file formats. BIFF5/8/12
|
||||
extended the format in various ways but largely stuck to the same record format.
|
||||
|
||||
Multiplan 4 "Normal" files are identical in structure to BIFF2 and use the same
|
||||
cell value records. There are some different record types for more advanced
|
||||
features like Print Settings. The BIFF2 writer generates files that can be read
|
||||
in Multiplan 4 and the parser can extract values from "Normal" files.
|
||||
|
||||
There is no official specification for any of these formats. Excel 95 can write
|
||||
files in these formats, so record lengths and fields were determined by writing
|
||||
in all of the supported formats and comparing files. Excel 2016 can generate
|
||||
@ -4025,11 +4030,8 @@ reader understands DBF Level 7 extensions like DATETIME.
|
||||
|
||||
- **Symbolic Link (SYLK)**
|
||||
|
||||
There is no real documentation. All knowledge was gathered by saving files in
|
||||
various versions of Excel to deduce the meaning of fields. Notes:
|
||||
|
||||
- Plain formulae are stored in the RC form.
|
||||
- Column widths are rounded to integral characters.
|
||||
<https://oss.sheetjs.com/notes/sylk/> is an informal specification based on our
|
||||
experimentation and previous documentation efforts.
|
||||
|
||||
- **Lotus Formatted Text (PRN)**
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user