napi_util.h 650 Bytes
#pragma once

#include "napi/native_api.h"
#include <string>

napi_value createStringUtf8(napi_env env, const char *string) {
    size_t strLength = strlen(string);
    napi_value result;
    napi_create_string_utf8(env, string, strLength, &result);
    return result;
}

char *utf8StringFromValue(napi_env env, napi_value value) {
    size_t len = 0;
    napi_get_value_string_utf8(env, value, nullptr, 0, &len);   // 获取字符串长度到len
    char *buf = new char[len + 1];                              // 分配合适大小的char数组
    napi_get_value_string_utf8(env, value, buf, len + 1, &len); //
    return buf;
}