Chuyển đổi một String thành một byte List:

Có nhiều phương thức để chuyển đổi một String đã cho thành một byte List trong Dart.

> Sử dụng phương thức utf8.encode():

Kỹ thuật utf8.encode() có thể được nhập từ Dart: Convert lấy một String và trả về danh sách các byte UTF-8.

import 'dart:convert';

void main() {
  String text = 'FlutterDevs.com';
  List<int> bytes = utf8.encode(text);
  print(bytes);
}

Khi chạy ứng dụng, chúng ta sẽ nhận được đầu ra của màn hình giống như Console Output của màn hình bên dưới.

[70, 108, 117, 116, 116, 101, 114, 68, 101, 118, 115, 46, 99, 111, 109]

Process finished with exit code 0

> Sử dụng thuộc tính codeUnits của String class:

Thuộc tính codeUnits của String class trả về danh sách các đơn vị mã UTF-16.

void main() {
  String text = 'FlutterDevs.com';
  List<int> bytes = text.codeUnits;
  print(bytes);
}

Khi chạy ứng dụng, chúng ta sẽ nhận được đầu ra của màn hình giống như Console Output của màn hình bên dưới.

[70, 108, 117, 116, 116, 101, 114, 68, 101, 118, 115, 46, 99, 111, 109]

Process finished with exit code 0

> Sử dụng thuộc tính runes của String class:

Thuộc tính runes cung cấp cho bạn khả năng lặp lại các điểm mã Unicode của một String.

void main() {
  String text = 'FlutterDevs.com Welcome you';
  Iterable<int> bytes = text.runes;

  List<int> list = bytes.toList();
  print(list);
}

Khi chạy ứng dụng, chúng ta sẽ nhận được đầu ra của màn hình giống nhưConsole Output của màn hình bên dưới.

[70, 108, 117, 116, 116, 101, 114, 68, 101, 118, 
115, 46, 99, 111, 109, 32, 87, 101, 108, 99, 111, 
109, 101, 32, 121, 111, 117]

Process finished with exit code 0

Chuyển đổi một Number thành một byte List:

Để chuyển đổi hoàn toàn một Number thành một byte List, ban đầu bạn có thể thay đổi hoàn toàn số đó thành một String và sau đó sử dụng một trong các phương pháp được tham chiếu trong phần trước để hoàn thành công việc.

import "dart:convert";

void main() {
  int myInt = 2023;
  print(utf8.encode(myInt.toString()));

  double myDouble = 7.4235;
  print(utf8.encode(myDouble.toString()));
}

Khi chạy ứng dụng, chúng ta sẽ nhận được đầu ra của màn hình giống như Console Output của màn hình bên dưới.

[50, 48, 50, 51]
[55, 46, 52, 50, 51, 53]

Process finished with exit code 0