Flutter字符串转换插件flutter_string_converter的使用

Flutter字符串转换插件flutter_string_converter 的使用

该Flutter插件用于将字符串转换为日期、整数、浮点数等。使用此插件的前提是字符串必须符合目标类型的格式。

使用

可以用此插件做什么?

  • 首字母大写
"your string".toFirstCapital()

结果为 Your string

  • 每个单词首字母大写
"your string".toEveryFirstCapital()

结果为 Your String

  • 驼峰式大小写
"your string".toCamelCase()

结果为 yOuR StRiNg

  • 获取字符串的第一个字符
"Your string".toSingleLetter()

结果为 Y

  • 获取字符串的每个单词首字母并连接
"your string".toEverySingleLetter(joinWith: ".")

结果为 Y.S

  • 从字符串中获取双精度浮点数
"1.2".toDouble()
  • 从字符串中获取整数
"1".toInt()
  • 根据指定格式获取日期
"2021-05-10".toDate(format: FormatDate.dmy)

结果为 10/05/2021

日期格式

格式名称 结果
FormatDate.dmyDash 16-08-2021
FormatDate.mdyDash 08-16-2021
FormatDate.ymdDash 2021-08-16
FormatDate.ydmDash 2021-16-08
FormatDate.dmy 16/08/2021
FormatDate.mdy 08/16/2021
FormatDate.ymd 2021/08/16
FormatDate.ydm 2021/16/08
FormatDate.dmyDash12 16-08-2021 11:30 PM
FormatDate.dmyDash12WithSec 16-08-2021 11:30:10 PM
FormatDate.mdyDash12 08-16-2021 11:30 PM
FormatDate.mdyDash12WithSec 08-16-2021 11:30:10 PM
FormatDate.ymdDash12 2021-08-16 11:30 PM
FormatDate.ymdDash12WithSec 2021-08-16 11:30:10 PM
FormatDate.ydmDash12 2021-16-08 11:30 PM
FormatDate.ydmDash12WithSec 2021-16-08 11:30:10 PM
FormatDate.dmy12 16/08/2021 11:30 PM
FormatDate.dmy12WithSec 16/08/2021 11:30:10 PM
FormatDate.mdy12 08/16/2021 11:30 PM
FormatDate.mdy12WithSec 08/16/2021 11:30:10 PM
FormatDate.ymd12 2021/08/16 11:30 PM
FormatDate.ymd12WithSec 2021/08/16 11:30:10 PM
FormatDate.ydm12 2021/16/08 11:30 PM
FormatDate.ydm12WithSec 2021/16/08 11:30:10 PM
FormatDate.dmyDash24 16-08-2021 23:30
FormatDate.dmyDash24WithSec 16-08-2021 23:30:10
FormatDate.mdyDash24 08-16-2021 23:30
FormatDate.mdyDash24WithSec 08-16-2021 23:30:10
FormatDate.ymdDash24 2021-08-16 23:30
FormatDate.ymdDash24WithSec 2021-08-16 23:30:10
FormatDate.ydmDash24 2021-16-08 23:30
FormatDate.ydmDash24WithSec 2021-16-08 23:30:10
FormatDate.dmy24 16/08/2021 23:30
FormatDate.dmy24WithSec 16/08/2021 23:30:10
FormatDate.mdy24 08/16/2021 23:30
FormatDate.mdy24WithSec 08/16/2021 23:30:10
FormatDate.ymd24 2021/08/16 23:30
FormatDate.ymd24WithSec 2021/08/16 23:30:10
FormatDate.ydm24 2021/16/08 23:30
FormatDate.ydm24WithSec 2021/16/08 23:30:10
FormatDate.time12 11:30 PM
FormatDate.time12WithSec 11:30:10 PM
FormatDate.time24 23:30
FormatDate.time24WithSec 23:30:10

完整示例

import 'package:flutter/material.dart';
import 'package:flutter_string_converter/flutter_string_converter.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  [@override](/user/override)
  Widget build(BuildContext context) {
    return MaterialApp(
      home: MyHomePage(),
    );
  }
}

class MyHomePage extends StatelessWidget {
  final String _string = "this is a boy";
  final String _name = "Rahul Gandhi";
  final String _date = "2021-08-16 23:30:23";
  final String _double = "1.2";
  final String _int = "1";

  [@override](/user/override)
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('示例'),
      ),
      body: ListView(
        children: [
          Center(
            child: Padding(
              padding: const EdgeInsets.all(8.0),
              child: Text(
                '$_string.toFirstCapital() => ${_string.toFirstCapital()}',
              ),
            ),
          ),
          Center(
            child: Padding(
              padding: const EdgeInsets.all(8.0),
              child: Text(
                '$_string.toEveryFirstCapital() => ${_string.toEveryFirstCapital()}',
              ),
            ),
          ),
          Center(
            child: Padding(
              padding: const EdgeInsets.all(8.0),
              child: Text(
                '$_name.toSingleLetter() => ${_name.toSingleLetter()}',
              ),
            ),
          ),
          Center(
            child: Padding(
              padding: const EdgeInsets.all(8.0),
              child: Text(
                '${_string.toCamelCase()}',
              ),
            ),
          ),
          Center(
            child: Padding(
              padding: const EdgeInsets.all(8.0),
              child: Text(
                '${_date.toDate(format: FormatDate.dmyDash24WithSec)}',
              ),
            ),
          ),
          Center(
            child: Padding(
              padding: const EdgeInsets.all(8.0),
              child: Text(
                '$_double 类型 = ${_double.runtimeType} => $_double 类型 =  ${_double.toDouble().runtimeType}',
              ),
            ),
          ),
          Center(
            child: Padding(
              padding: const EdgeInsets.all(8.0),
              child: Text(
                '$_int 类型 = ${_int.runtimeType} => $_int 类型 =  ${_int.toInt().runtimeType}',
              ),
            ),
          ),
        ],
      ),
    );
  }
}

更多关于Flutter字符串转换插件flutter_string_converter的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter字符串转换插件flutter_string_converter的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


flutter_string_converter 是一个用于在 Flutter 中进行字符串转换的插件。它提供了多种字符串处理功能,例如大小写转换、字符串翻转、编码解码等。以下是如何在 Flutter 项目中使用 flutter_string_converter 插件的步骤:

1. 添加依赖

首先,你需要在 pubspec.yaml 文件中添加 flutter_string_converter 插件的依赖:

dependencies:
  flutter:
    sdk: flutter
  flutter_string_converter: ^1.0.0  # 请使用最新版本

然后运行 flutter pub get 来获取依赖。

2. 导入插件

在你的 Dart 文件中导入 flutter_string_converter 插件:

import 'package:flutter_string_converter/flutter_string_converter.dart';

3. 使用插件功能

flutter_string_converter 提供了多种字符串转换功能。以下是一些常见的使用示例:

大小写转换

String originalText = "Hello, World!";

// 转换为大写
String upperCaseText = StringConverter.toUpperCase(originalText);
print(upperCaseText); // 输出: HELLO, WORLD!

// 转换为小写
String lowerCaseText = StringConverter.toLowerCase(originalText);
print(lowerCaseText); // 输出: hello, world!

字符串翻转

String originalText = "Hello, World!";

// 翻转字符串
String reversedText = StringConverter.reverse(originalText);
print(reversedText); // 输出: !dlroW ,olleH

编码解码

String originalText = "Hello, World!";

// Base64 编码
String base64Encoded = StringConverter.toBase64(originalText);
print(base64Encoded); // 输出: SGVsbG8sIFdvcmxkIQ==

// Base64 解码
String base64Decoded = StringConverter.fromBase64(base64Encoded);
print(base64Decoded); // 输出: Hello, World!

URL 编码解码

String originalText = "Hello, World!";

// URL 编码
String urlEncoded = StringConverter.urlEncode(originalText);
print(urlEncoded); // 输出: Hello%2C%20World%21

// URL 解码
String urlDecoded = StringConverter.urlDecode(urlEncoded);
print(urlDecoded); // 输出: Hello, World!

4. 其他功能

flutter_string_converter 还提供了其他一些功能,例如:

  • MD5 哈希:生成字符串的 MD5 哈希值。
  • SHA1 哈希:生成字符串的 SHA1 哈希值。
  • UUID 生成:生成 UUID。

你可以根据需要使用这些功能。

5. 示例代码

以下是一个完整的示例代码,展示了如何使用 flutter_string_converter 插件:

import 'package:flutter/material.dart';
import 'package:flutter_string_converter/flutter_string_converter.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  [@override](/user/override)
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: Text('flutter_string_converter Example'),
        ),
        body: Center(
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            children: <Widget>[
              Text('Original: Hello, World!'),
              Text('Uppercase: ${StringConverter.toUpperCase("Hello, World!")}'),
              Text('Lowercase: ${StringConverter.toLowerCase("Hello, World!")}'),
              Text('Reversed: ${StringConverter.reverse("Hello, World!")}'),
              Text('Base64 Encoded: ${StringConverter.toBase64("Hello, World!")}'),
              Text('Base64 Decoded: ${StringConverter.fromBase64("SGVsbG8sIFdvcmxkIQ==")}'),
              Text('URL Encoded: ${StringConverter.urlEncode("Hello, World!")}'),
              Text('URL Decoded: ${StringConverter.urlDecode("Hello%2C%20World%21")}'),
            ],
          ),
        ),
      ),
    );
  }
}
回到顶部