https://github.com/sestegra/spreadsheet_decoder
Spreadsheet Decoder is a library for decoding spreadsheets for ODS and XLSX files.
https://github.com/sestegra/spreadsheet_decoder
dart dartlang ods xlsx
Last synced: about 1 month ago
JSON representation
Spreadsheet Decoder is a library for decoding spreadsheets for ODS and XLSX files.
- Host: GitHub
- URL: https://github.com/sestegra/spreadsheet_decoder
- Owner: sestegra
- License: mit
- Created: 2016-01-02T22:53:39.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2024-09-09T21:21:41.000Z (about 1 year ago)
- Last Synced: 2024-09-10T01:51:17.911Z (about 1 year ago)
- Topics: dart, dartlang, ods, xlsx
- Language: Dart
- Homepage:
- Size: 356 KB
- Stars: 54
- Watchers: 7
- Forks: 21
- Open Issues: 19
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Spreadsheet Decoder
[](https://travis-ci.org/sestegra/spreadsheet_decoder?branch=master)
[](https://coveralls.io/r/sestegra/spreadsheet_decoder?branch=master)
[](https://pub.dartlang.org/packages/spreadsheet_decoder)Spreadsheet Decoder is a library for decoding and updating spreadsheets for ODS and XLSX files.
## Usage
### On server-side
import 'dart:io';
import 'package:spreadsheet_decoder/spreadsheet_decoder.dart';main() {
var bytes = File.fromUri(fullUri).readAsBytesSync();
var decoder = SpreadsheetDecoder.decodeBytes(bytes);
var table = decoder.tables['Sheet1'];
var values = table.rows[0];
...
decoder.updateCell('Sheet1', 0, 0, 1337);
File(join(fullUri).writeAsBytesSync(decoder.encode());
...
}### On client-side
import 'dart:html';
import 'package:spreadsheet_decoder/spreadsheet_decoder.dart';main() {
var reader = FileReader();
reader.onLoadEnd.listen((event) {
var decoder = SpreadsheetDecoder.decodeBytes(reader.result);
var table = decoder.tables['Sheet1'];
var values = table.rows[0];
...
decoder.updateCell('Sheet1', 0, 0, 1337);
var bytes = decoder.encode();
...
});
}## Features not yet supported
This implementation doesn't support following features:
- annotations
- spanned rows
- spanned columns
- hidden rows (visible in resulting tables)
- hidden columns (visible in resulting tables)For XLSX format, this implementation only supports native Excel format for date, time and boolean type conversion.
In other words, custom format for date, time, boolean aren't supported and then file exported from LibreOffice as well.## License
The MIT License, see [LICENSE](https://github.com/sestegra/spreadsheet_decoder/raw/master/LICENSE).