gpt4 book ai didi

Dart - 编码和解码 base64 字符串

转载 作者:行者123 更新时间:2023-12-04 03:08:35 25 4
gpt4 key购买 nike

如何原生转换字符串 -> base64 和 base64 -> 字符串

我只找到这个 bytes to base64string

想要这样:

String Base64String.encode();
String Base64String.decode();

或从另一种语言移植更容易?

最佳答案

您可以使用 BASE64 codec(在 Dart 2 中重命名为 base64)和 LATIN1 codec(重命名为 latin1)在 Dart 2 中。

var stringToEncode = 'Dart is awesome';

// encoding

var bytesInLatin1 = LATIN1.encode(stringToEncode);
// [68, 97, 114, 116, 32, 105, 115, 32, 97, 119, 101, 115, 111, 109, 101]

var base64encoded = BASE64.encode(bytesInLatin1);
// RGFydCBpcyBhd2Vzb21l

// decoding

var bytesInLatin1_decoded = BASE64.decode(base64encoded);
// [68, 97, 114, 116, 32, 105, 115, 32, 97, 119, 101, 115, 111, 109, 101]

var initialValue = LATIN1.decode(bytesInLatin1_decoded);
// Dart is awesome

如果您总是使用 LATIN1 来生成编码字符串,您可以通过创建编解码器来直接将字符串转换为编码字符串,从而避免 2 次转换调用。

var codec = LATIN1.fuse(BASE64);

print(codec.encode('Dart is awesome'));
// RGFydCBpcyBhd2Vzb21l

print(codec.decode('RGFydCBpcyBhd2Vzb21l'));
// Dart is awesome

关于Dart - 编码和解码 base64 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14755421/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com