我想创建一个在DART中生成随机字符串的函数. 它应该包括混合在一起的字母和数字.我怎么才能做到这一点呢?

推荐答案

或者,如果你不想使用软件包,你可以做一个简单的实现,比如:

import 'dart:math';

void main() {
  print(getRandomString(5));  // 5GKjb
  print(getRandomString(10)); // LZrJOTBNGA
  print(getRandomString(15)); // PqokAO1BQBHyJVK
}

const _chars = 'AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz1234567890';
Random _rnd = Random();

String getRandomString(int length) => String.fromCharCodes(Iterable.generate(
    length, (_) => _chars.codeUnitAt(_rnd.nextInt(_chars.length))));

我要补充的是,您不应该使用此代码来生成密码或其他类型的秘密.如果您这样做,请至少使用Random.secure()来创建随机生成器.

Dart相关问答推荐

有没有办法否定IF条件中的模式大小写匹配?

Dart - 检测未完成的期货

寻找provider context 的flutter问题

在Flutter中重命名文件/图像

Flutter pod 安装问题 - # 的未定义方法 `each_child'

Flutter 中的with关键字

在 Dart 中处理字节数组时,使用 Uint8List 优于 List 有什么优势?

设置文本以匹配Flutter中的列宽

什么用例有 FirebaseUser 的 reload() 功能?

如何使用我的 dart 包私有而不在 pub dart lang 上显示?

如何在Flatter中更改复选框边框 colored颜色 ?默认情况下,它显示为黑色,但我希望它显示为灰色

Package:flutter/src/widgets/overlay.dart':Failed assertion: line 133 pos 12: "_overlay != null"

Flitter中的谷歌 map 没有出现

如何在 Flutter 中匹配密码和确认密码?

Firebase 手机身份验证Flutter crash崩溃

Flutter 构建失败. Android 依赖 'androidx.core:core' 的编译(1.0.0)和运行时(1.0.1)类路径有不同的版本

如何在 Dart 中使用 char 类型?

~ 在 Dart 中是什么意思?

如何通过 Dart 中的值获取 Map 键?

Dart中var和dynamic类型的区别?