在CentOS系统中,Flutter的数据存储可以通过多种方式实现,包括SharedPreferences、文件存储、SQLite数据库等。以下是一些基本的操作方法:
1. SharedPreferences
SharedPreferences是一种轻量级的数据存储方式,适用于存储简单的键值对数据。
安装依赖
首先,确保你的Flutter项目中已经添加了shared_preferences插件。如果没有,可以在pubspec.yaml文件中添加:
dependencies:
flutter:
sdk: flutter
shared_preferences: ^2.0.15
然后运行flutter pub get来安装依赖。
存储数据
import 'package:shared_preferences/shared_preferences.dart';
Future<void> saveData(String key, String value) async {
final prefs = await SharedPreferences.getInstance();
await prefs.setString(key, value);
}
读取数据
Future<String?> getData(String key) async {
final prefs = await SharedPreferences.getInstance();
return prefs.getString(key);
}
删除数据
Future<void> deleteData(String key) async {
final prefs = await SharedPreferences.getInstance();
await prefs.remove(key);
}
2. 文件存储
Flutter提供了dart:io库来处理文件存储。
写入文件
import 'dart:io';
import 'package:path_provider/path_provider.dart';
Future getFile() async {
final directory = await getApplicationDocumentsDirectory();
return File('${directory.path}/example.txt');
}
Future<void> writeFile(String content) async {
final file = await getFile();
await file.writeAsString(content);
}
读取文件
Future<String> readFile() async {
final file = await getFile();
return await file.readAsString();
}
删除文件
Future<void> deleteFile() async {
final file = await getFile();
await file.delete();
}
3. SQLite数据库
SQLite是一种轻量级的嵌入式数据库,适用于需要复杂查询和数据结构的应用。
安装依赖
首先,确保你的Flutter项目中已经添加了sqflite插件。如果没有,可以在pubspec.yaml文件中添加:
dependencies:
flutter:
sdk: flutter
sqflite: ^2.0.0+4
path_provider: ^2.0.2
然后运行flutter pub get来安装依赖。
创建数据库和表
import 'package:sqflite/sqflite.dart';
import 'package:path/path.dart';
Future openDatabase() async {
final databasePath = join(await getDatabasesPath(), 'my_database.db');
return await openDatabase(databasePath,
version: 1, onCreate: _onCreate);
}
Future _onCreate(Database db, int version) async {
await db.execute('''
CREATE TABLE my_table(
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
age INTEGER NOT NULL
)
''');
}
插入数据
Future<int> insertData(Map<String, dynamic> row) async {
final db = await openDatabase();
return await db.insert('my_table', row);
}
查询数据
Future<List<Map<String, dynamic>>> queryData() async {
final db = await openDatabase();
return await db.query('my_table');
}
更新数据
Future<int> updateData(Map<String, dynamic> row) async {
final db = await openDatabase();
return await db.update('my_table', row,
where: 'id = ?', whereArgs: [row['id']]);
}
删除数据
Future<int> deleteData(int id) async {
final db = await openDatabase();
return await db.delete('my_table', where: 'id = ?', whereArgs: [id]);
}
通过这些方法,你可以在CentOS系统中的Flutter应用中实现数据的存储和管理。根据具体需求选择合适的数据存储方式。
以上就是关于“centos中flutter数据存储怎么操作”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm