// Create a box collection
final collection = await BoxCollection.open(
'MyFirstFluffyBox', // Name of your database
{'cats', 'dogs'}, // Names of your boxes
path: './', // Path where to store your boxes (Only used in Flutter / Dart IO)
key: HiveCipher(), // Key to encrypt your boxes (Only used in Flutter / Dart IO)
);
// Open your boxes. Optional: Give it a type.
final catsBox = collection.openBox<Map>('cats');
// Put something in
await catsBox.put('fluffy', {'name': 'Fluffy', 'age': 4});
await catsBox.put('loki', {'name': 'Loki', 'age': 2});
// Get values of type (immutable) Map?
final loki = await catsBox.get('loki');
print('Loki is ${loki?['age']} years old.');
// Returns a List of values
final cats = await catsBox.getAll(['loki', 'fluffy']);
print(cats);
// Returns a List<String> of all keys
final allCatKeys = await catsBox.getAllKeys();
print(allCatKeys);
// Returns a Map<String, Map> with all keys and entries
final catMap = await catsBox.getAllValues();
print(catMap);
// delete one or more entries
await catsBox.delete('loki');
await catsBox.deleteAll(['loki', 'fluffy']);
// ...or clear the whole box at once
await catsBox.clear(); //<----------------------------------------------
// Speed up write actions with transactions
await collection.transaction(
() async {
await catsBox.put('fluffy', {'name': 'Fluffy', 'age': 4});
await catsBox.put('loki', {'name': 'Loki', 'age': 2});
// ...
},
boxNames: ['cats'], // By default all boxes become blocked.
readOnly: false,
);
5条答案
按热度按时间s1ag04yj1#
在Linux中,我通过删除~/.local/share/中的flutter_app_目录修复了这个问题。<flutter_app_name>
在Windows和MacOS中可以找到类似的操作
ie3xauqp2#
只需打印数据库的路径,您就可以知道它存储的确切位置,对我来说,它存储在此路径上
flutter:C:\用户\用户名\应用程序数据\漫游\包名\债务记录\db.sqlite
js5cn81o3#
对于macos,我不得不打开finder,然后点击
command + shift + g
并粘贴这个~/Library/Application Support
在app package文件夹中我找到了所有的文件
wlzqhblo4#
我的问题是在Windows上的Hive,我设法用下面的解决方案解决了它(我认为它在其他平台上也能工作):
也不要忘记导入路径提供程序,如下所示:
您将在调试控制台上看到如下内容
当您导航到该目录时,您将找到所需的文件,对于配置单元,我找到了所有框文件,如
box_name.hive
和box_name.lock
,因此我删除了与我的问题解决相关的文件这也适用于所有其他存储包
yyhrrdl85#
或者调用clear(),如readme中所示