这是一个 C++14 实现的命令行翻译程序,目前已经实现了主要的功能。
命令行参数是源语言和目的语言,省略参数则为编译时设定的默认值。
用法举例如下,当然也可以直接交互式操作。
$ echo hello world | translate en zh-cn
你好,世界
翻译是调用了谷歌翻译的接口(禁止商用),有很多类似的库不过没看到用 C++做的,于是自己写了个,并优化了 token 的算法。
技术上用的是 Boost 全家桶;),因为用到 HTTPS 所以还需要连接 OpenSSL。
目前还有些不足,主要是输入输出,没有作字符集转换,因为开发平台是 Linux,默认是 UTF-8。Windows 下可能有问题。请问在 Boost 下有什么简洁的解决方案吗,可以把 cin 和 cout 在不同平台统一转换成 UTF-8 ?