2013-02-07 1 views

Antwort

1

nahm ich eine Klasse dart.io -> base64.dart, es ein wenig verändert, und es gibt Sie

wie man verwendet:

var somestring = 'Hello dart!'; 

var base64string = Base64String.encode(somestring); 
var mystring = Base64String.decode(base64string); 

source on pastbin.com

source on gist.github.com

2

Ab 0.9.2 des crypto Pakets

CryptoUtils ist veraltet. Verwenden Sie stattdessen die Base64-APIs in und die Hex-APIs im convert-Paket.

import 'dart:convert' show UTF8, BASE64; 

main() { 
    final str = 'https://dartpad.dartlang.org/'; 

    final base64 = BASE64.encode(UTF8.encode(str)); 
    print('base64: $base64'); 

    final str2 = UTF8.decode(BASE64.decode(base64)); 
    print(str2); 
    print(str == str2); 
} 

Probieren Sie es in DartPad

2

ich auf Günters 10. April kommentieren würde, 2016, posten, aber ich weiß nicht den Ruf haben. Wie er sagt, sollten Sie jetzt die dart:convert Bibliothek verwenden. Sie müssen ein paar Codecs kombinieren, um eine utf8-Zeichenfolge aus einer Base64-Zeichenfolge und umgekehrt zu erhalten. This article sagt, dass fusing your codecs schneller ist.

import 'dart:convert'; 

void main() { 
    var base64 = 'QXdlc29tZSE='; 
    var utf8 = 'Awesome!'; 

    // Combining the codecs 
    print(utf8 == UTF8.decode(BASE64.decode(base64))); 
    print(base64 == BASE64.encode(UTF8.encode(utf8))); 
    // Output: 
    // true 
    // true 

    // Fusing is faster, and you don't have to worry about reversing your codecs 
    print(utf8 == UTF8.fuse(BASE64).decode(base64)); 
    print(base64 == UTF8.fuse(BASE64).encode(utf8)); 
    // Output: 
    // true 
    // true 
} 

https://dartpad.dartlang.org/5c0e1cfb6d1d640cdc902fe57a2a687d

+0

Warum dies nicht in Dart gebaut: Bibliothek umwandeln ?! – Pat