Leveldb使用小例

来源:互联网 发布:qq飞车刺甲黄金龙数据 编辑:程序博客网 时间:2024/05/03 17:03
#include <assert.h>#include <iostream>#include <string>#include <db.h>using namespace std;int main(int argc, char *argv[]){leveldb::DB *db;leveldb::Options options;options.create_if_missing = true;std::string dbpath = "testdb";leveldb::Status status = leveldb::DB::Open(options, dbpath, &db);assert(status.ok());std::string key1 = "lgc";std::string key2 = "example@gmail.com";cout<< "Open db ok" << std::endl;std::string value;leveldb::Status s;s = db->Put(leveldb::WriteOptions(), key1, key2);s = db->Get(leveldb::ReadOptions(), key1, &value);cout << value << std::endl;delete db;return 0;}


下载LevelDB源码,配置后,编译,然后将库的头文件copy到/usr/include目录下,共享库拷贝到/usr/lib目录下

编译:g++ -Wall -g  -o test leveldb.cpp -I/usr/include/leveldb/ -L/usr/lib -lleveldb

执行:./test

输出:

Open db ok

example@gmail.com

执行完就会发现程序创建了一个testdb的目录, shell: ls testdb发现目录里有数据文件:

000003.log  CURRENT  LOCK  LOG  MANIFEST-000002

这个程序非常简单,先设置数据库选项,接着打开数据库,向打开的数据库写入一条数据,然后再从数据库读数据,打印读到的数据。

Leveldb的API详细解释可以参考Leveldb的官方文档

http://www.pipetips.com/entries/2012/09/06/8356.html




0 0