Exemplo n.º 1
0
size_t opencc_convert_utf8_to_buffer(opencc_t opencc, const char* input,
                                     size_t length, char* output) {
  try {
    SimpleConverter* instance = reinterpret_cast<SimpleConverter*>(opencc);
    return instance->Convert(input, length, output);
  } catch (std::runtime_error& ex) {
    cError = ex.what();
    return static_cast<size_t>(-1);
  }
}
Exemplo n.º 2
0
char* opencc_convert(opencc_t opencc, const char* input) try {
  SimpleConverter* instance = reinterpret_cast<SimpleConverter*>(opencc);
  std::string converted = instance->Convert(input);
  char* output = new char[converted.length() + 1];
  strncpy(output, converted.c_str(), converted.length());
  output[converted.length()] = '\0';
  return output;
} catch (std::runtime_error& ex) {
  // TODO report error
  return NULL;
}
Exemplo n.º 3
0
char* opencc_convert_utf8(opencc_t opencc, const char* input, size_t length) {
  try {
    SimpleConverter* instance = reinterpret_cast<SimpleConverter*>(opencc);
    std::string converted = instance->Convert(input, length);
    char* output = new char[converted.length() + 1];
    strncpy(output, converted.c_str(), converted.length());
    output[converted.length()] = '\0';
    return output;
  } catch (std::runtime_error& ex) {
    cError = ex.what();
    return nullptr;
  }
}