最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
centos中flutter如何实现数据持久化
时间:2026-06-05 09:52:27 编辑:袖梨 来源:一聚教程网
在CentOS系统下,Flutter实现数据持久化有多种方式,以下是一些常用的方法:

1. 使用 shared_preferences
shared_preferences 是一个Flutter插件,用于存储简单的键值对数据。
安装插件
在终端中运行以下命令来安装 shared_preferences 插件:
flutter pub add shared_preferences使用示例
import 'package:flutter/material.dart';import 'package:shared_preferences/shared_preferences.dart';void main() {runApp(MyApp());}class MyApp extends StatelessWidget {@overrideWidget build(BuildContext context) {return MaterialApp(home: DataPersistenceExample(),);}}class DataPersistenceExample extends StatefulWidget {@override_DataPersistenceExampleState createState() => _DataPersistenceExampleState();}class _DataPersistenceExampleState extends State<DataPersistenceExample> {String _data = '';@overridevoid initState() {super.initState();_loadData();}void _loadData() async {SharedPreferences prefs = await SharedPreferences.getInstance();setState(() {_data = prefs.getString('key') ?? 'Default Value';});}void _saveData() async {SharedPreferences prefs = await SharedPreferences.getInstance();setState(() {prefs.setString('key', _data);});}@overrideWidget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text('Data Persistence Example'),),body: Center(child: Column(mainAxisAlignment: MainAxisAlignment.center,children: <Widget>[TextField(decoration: InputDecoration(labelText: 'Enter Data',),onChanged: (value) {setState(() {_data = value;});},),SizedBox(height: 20),ElevatedButton(onPressed: _saveData,child: Text('Save Data'),),SizedBox(height: 20),Text('Data: $_data'),],),),);}}2. 使用 sqflite
sqflite 是一个Flutter插件,用于在本地存储SQLite数据库。
安装插件
在终端中运行以下命令来安装 sqflite 插件:
flutter pub add sqflite使用示例
import 'package:flutter/material.dart';import 'package:sqflite/sqflite.dart';import 'dart:convert';void main() {runApp(MyApp());}class MyApp extends StatelessWidget {@overrideWidget build(BuildContext context) {return MaterialApp(home: DataPersistenceExample(),);}}class DataPersistenceExample extends StatefulWidget {@override_DataPersistenceExampleState createState() => _DataPersistenceExampleState();}class _DataPersistenceExampleState extends State<DataPersistenceExample> {String _data = '';@overridevoid initState() {super.initState();_loadData();}void _loadData() async {final database = await openDatabase('my_database.db', version: 1);final Map<String, dynamic> data = await database.get('data');if (data != null) {setState(() {_data = data['value'] ?? 'Default Value';});}await database.close();}void _saveData() async {final database = await openDatabase('my_database.db', version: 1);await database.insert('data',{'value': _data},conflictAlgorithm: ConflictAlgorithm.replace,);await database.close();}@overrideWidget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text('Data Persistence Example'),),body: Center(child: Column(mainAxisAlignment: MainAxisAlignment.center,children: <Widget>[TextField(decoration: InputDecoration(labelText: 'Enter Data',),onChanged: (value) {setState(() {_data = value;});},),SizedBox(height: 20),ElevatedButton(onPressed: _saveData,child: Text('Save Data'),),SizedBox(height: 20),Text('Data: $_data'),],),),);}}3. 使用 flutter_secure_storage
flutter_secure_storage 是一个Flutter插件,用于安全地存储敏感数据,如密码、令牌等。
安装插件
在终端中运行以下命令来安装 flutter_secure_storage 插件:
flutter pub add flutter_secure_storage使用示例
import 'package:flutter/material.dart';import 'package:flutter_secure_storage/flutter_secure_storage.dart';void main() {runApp(MyApp());}class MyApp extends StatelessWidget {@overrideWidget build(BuildContext context) {return MaterialApp(home: DataPersistenceExample(),);}}class DataPersistenceExample extends StatefulWidget {@override_DataPersistenceExampleState createState() => _DataPersistenceExampleState();}class _DataPersistenceExampleState extends State<DataPersistenceExample> {String _data = '';@overridevoid initState() {super.initState();_loadData();}void _loadData() async {final storage = FlutterSecureStorage();setState(() {_data = storage.read(key: 'key') ?? 'Default Value';});}void _saveData() async {final storage = FlutterSecureStorage();await storage.write(key: 'key', value: _data);}@overrideWidget build(BuildContext context) {return Scaffold(appBar: AppBar(title: Text('Data Persistence Example'),),body: Center(child: Column(mainAxisAlignment: MainAxisAlignment.center,children: <Widget>[TextField(decoration: InputDecoration(labelText: 'Enter Data',),onChanged: (value) {setState(() {_data = value;});},),SizedBox(height: 20),ElevatedButton(onPressed: _saveData,child: Text('Save Data'),),SizedBox(height: 20),Text('Data: $_data'),],),),);}}以上是几种常见的Flutter数据持久化方法,你可以根据具体需求选择合适的方法。
相关文章
- Linux Hack攻击的应对策略有哪些 06-06
- Linux遭Hack攻击后果如何应对 06-06
- Linux Hack攻击防范实用技巧有哪些 06-06
- Linux Hack攻击检测常用工具有哪些 06-06
- Linux Coremail邮件加密强度够用吗 06-06
- 银河奇异果app屏保时间怎么设置 06-06