如何编码为Base64飞镖字符串? [重复](How do I encode a Dart st

2019-08-22 02:06发布

这个问题已经在这里有一个答案:

  • 如何本地转换字符串- > Base64和BASE64 - >串 4个回答

我与需要在base64编码数据的API工作。 我怎么编码为Base64简单的字符串?

Answer 1:

有没有必要使用加密包,因为核心库提供了base64编码和解码内置支持。

https://api.dartlang.org/stable/2.1.0/dart-convert/dart-convert-library.html

import 'dart:convert';

main() {
  var str = "Hello world";
  var bytes = utf8.encode(str);
  var base64Str = base64.encode(bytes);
  print(base64Str);
}


Answer 2:

它需要几个步骤,但在base64编码字符串是非常简单的。

镖具有在一个功能包:加密库, CryptoUtils.bytesToBase64 ,这需要的字节的列表编码为base64。 为了从一个飞镖字符串得到字节的列表,你可以使用UTF8.encode()函数中镖:转换库。

总之,这看起来像:

import 'dart:convert';
import 'package:crypto/crypto.dart';

main() {
  var str = "Hello world";
  var bytes = UTF8.encode(str);
  var base64 = CryptoUtils.bytesToBase64(bytes);
  print(base64);
}

如果你在浏览器中工作,那么你必须使用浏览器的更容易的选择内置的btoa功能。 上面的代码片断变为:

import 'dart:html';

main() {
  var str = "Hello world";
  var base64 = window.btoa(str);
  print(base64);
}


文章来源: How do I encode a Dart string in base64? [duplicate]
标签: dart