Support for character encodings / charsets / codecs missing from dart:convert
.
Supports the following encodings:
- Latin / ISO 8859 encodings:
- Latin 1 / ISO 8859-1
- Latin 2 / ISO 8859-2
- Latin 3 / ISO 8859-3
- Latin 4 / ISO 8859-4
- Latin 5 / ISO 8859-5
- Latin 6 / ISO 8859-6
- Latin 7 / ISO 8859-7
- Latin 8 / ISO 8859-8
- Latin 9 / ISO 8859-9
- Latin 10 / ISO 8859-10
- Latin 11 / ISO 8859-11
- Latin 13 / ISO 8859-13
- Latin 14 / ISO 8859-14
- Latin 15 / ISO 8859-15
- Latin 16 / ISO 8859-16
- Windows Codepage Encodings:
- Windows-1250 / cp-1250
- Windows-1251 / cp-1251
- Windows-1252 / cp-1252
- Windows-1253 / cp-1253
- Windows-1254 / cp-1254
- Windows-1256 / cp-1256
- DOS Codepage Encodings:
- cp-850
- GBK (compatible with GB-2312)
- KOI8
- KOI8-R
- KOI8-U
- Big5
Usage
Using enough_convert
is pretty straight forward:
import 'package:enough_convert/enough_convert.dart';
main() {
final codec = const Windows1252Codec(allowInvalid: false);
final input = 'Il faut être bête quand même.';
final encoded = codec.encode(input);
final decoded = codec.decode([...encoded]);
print('${codec.name}: encode "$input" to "$encoded"');
print('${codec.name}: decode $encoded to "$decoded"');
}
Installation
Add this dependency your pubspec.yaml file:
dependencies:
enough_convert: ^1.6.0
The latest version or enough_convert
is .
Wait, what is this about?
Dylan (not associated with this project in any way) explains the world of text encoding quite well: https://www.youtube.com/watch?v=_mZBa3sqTrI
It's 2022, do we still need this?
Short answer: yes.
Long answer: yes, there are still many web pages, emails and other content out there that is encoded in various text encodings.
Features and bugs
Please file feature requests and bugs at the issue tracker.
Null-Safety
enough_convert is null-safe from v1.0.0 onward.
License
enough_convert
is licensed under the commercial friendly Mozilla Public License 2.0
Libraries
- big5
- Provides missing BIG5 character encoder / decoder / codec / encoding / charset converters for Dart.
- dos
- Provides missing common DOS character encoders / decoders / codecs / encodings / charset converters for Dart.
- enough_convert
- Provides missing common character encoders / decoders / codecs / encodings / charset converters for Dart.
- gbk
- Provides missing GBK character encoder / decoder / codec / encoding / charset converters for Dart.
- koi8
- Provides missing common KOI8 character encoders / decoders / codecs / encodings / charset converters for Dart.
- latin
- Provides missing common ISO-8859 character encoders / decoders / codecs / encodings / charset converters for Dart.
- windows
- Provides missing common windows character encoders / decoders / codecs / encodings / charset converters for Dart.