fl_charset 1.0.2 copy "fl_charset: ^1.0.2" to clipboard
fl_charset: ^1.0.2 copied to clipboard

Charset encoding and decoding Library, include ISO-(2-15), Windows Series, GBK, EUC-JP, EUC-KR, SHIFT-JIS, TCVN-3. And supported charset detect, canEncode, canDecode.

example/lib/example.dart

import 'dart:convert';

import 'package:fl_charset/fl_charset.dart';

void main(List<String> arguments) {
  // default
  print(utf16.decode([254, 255, 78, 10, 85, 132, 130, 229, 108, 52]));

  print(utf16.encode("上善若水"));

  print(tcvn.encode("Tiếng Việt"));

  // detect
  print(hasUtf16Bom([0xFE, 0xFF, 0x6C, 0x34]));

  // advance
  Utf16Encoder encoder = utf16.encoder as Utf16Encoder;
  print(encoder.encodeUtf16Be("上善若水", false));
  print(encoder.encodeUtf16Le("上善若水", true));

  // detect encoding

  String text = "上善若水";

  List<int> gbkData = gbk.encode(text);
  print(Charset.detect(gbkData)?.name);

  List<int> eucJpData = eucJp.encode(text);
  print(Charset.detect(
    eucJpData,
    orders: [ascii, eucJp, latin1],
  )?.name);

  List<int> shiftJisData = shiftJis.encode(text);
  print(Charset.detect(
    shiftJisData,
    orders: [ascii, shiftJis, latin1],
  )?.name);

  text = '상선이 물과 같다';
  List<int> eucKrData = eucKr.encode(text);
  print(Charset.detect(
    eucKrData,
    orders: [ascii, eucKr, latin1],
  )?.name);

  text = 'ABC55/';
  List<int> asciiData = ascii.encode(text);
  print(Charset.detect(asciiData)?.name);
}
2
likes
160
pub points
51%
popularity

Publisher

unverified uploader

Charset encoding and decoding Library, include ISO-(2-15), Windows Series, GBK, EUC-JP, EUC-KR, SHIFT-JIS, TCVN-3. And supported charset detect, canEncode, canDecode.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (license)

More

Packages that depend on fl_charset