You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google Sheets API写入Unicode字符异常问题求助

问题诊断与修复

核心问题

不是Google API Client将Unicode转成ASCII发送,而是**values参数的格式不符合API要求**,导致字符串被错误解析,最终出现乱码。

修复步骤

Google Sheets API的resource.values字段要求传入二维数组(即使只写入单个单元格),你直接传递了字符串,API会将其拆分为单个字符处理,破坏了Unicode字符的编码结构。

修正后的代码:

const values = [["Nguyễn Văn A"]]; // 包裹为二维数组
const writeParams = { 
  spreadsheetId: Sheet_ID, 
  range: range, 
  valueInputOption: "RAW", 
  resource: { values: values, majorDimension : majorDimension } 
};

const req = await gapi.client.sheets.spreadsheets.values.update(writeParams);
return req;

原因说明

  • Google Sheets API设计中,values代表表格的单元格集合,外层数组对应行(或列,由majorDimension决定),内层数组对应每行(或列)的单元格值。
  • 直接传入字符串时,API会把字符串当作字符数组处理,导致UTF-8编码的越南语字符被拆分成独立字节,再被错误解码为Latin-1字符,就出现了Nguyá»…n Văn A这类乱码。

额外验证

如果majorDimension设置为"COLUMNS",二维数组的格式依然适用,比如[["Nguyễn Văn A"]]表示将值写入指定范围的第一列第一行单元格。

内容的提问来源于stack exchange,提问作者Huu Thinh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 02:45:43