- 授权协议: MIT
- 开发语言: C/C++
- 操作系统: 跨平台
- 软件首页: https://bitbucket.org/knight666/utf8rewind
软件介绍
utf8rewind 是跨平台的开源 C 库,扩展默认的字符串处理函数,支持 UTF-8 编码文本。
示例:
#include "utf8rewind.h"
int main(int argc, char** argv)
{
const char* input = "Hello World!";
static const size_t output_size = 256;
char output[output_size];
wchar_t output_wide[output_size];
const char* input_seek;
size_t converted_size;
int32_t errors;
memset(output, 0, output_size * sizeof(char));
memset(output_wide, 0, output_size * sizeof(wchar_t));
/* Convert input to uppercase: "Hello World!" -> "HELLO WORLD!" */
converted_size = utf8toupper(
input, strlen(input),
output, output_size - 1,
&errors);
if (converted_size == 0 ||
errors != UTF8_ERR_NONE)
{
return -1;
}
/* Convert UTF-8 input to wide (UTF-16 or UTF-32) encoded text: "HELLO WORLD!" -> L"HELLO WORLD!" */
converted_size = utf8towide(
output, strlen(output),
output_wide, (output_size - 1) * sizeof(wchar_t),
&errors);
if (converted_size == 0 ||
errors != UTF8_ERR_NONE)
{
return -1;
}
/* Seek in input: Hello World!" -> "World!" */
input_seek = utf8seek(input, input, 6, SEEK_SET);
return 0;
}NoSQL精粹
[美]Pramod J. Sadalage、[美]Martin Fowler / 爱飞翔 / 机械工业出版社 / 2013-8 / 49.00元
《NoSQL精粹》为考虑是否可以使用和如何使用NoSQL数据库的企业提供了可靠的决策依据。它由世界级软件开发大师和软件开发“教父”Martin Fowler与Jolt生产效率大奖图书作者Pramod J. Sadalage共同撰写。书中全方位比较了关系型数据库与NoSQL数据库的异同;分别以Riak、MongoDB、Cassandra和Neo4J为代表,详细讲解了键值数据库、文档数据库、列族数据库......一起来看看 《NoSQL精粹》 这本书的介绍吧!
