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

使用BigQuery导入Excel文件遇‘Bad character (ASCII 0)’错误求助

解决BigQuery导入Excel文件时的ASCII 0字符错误问题

核心问题排查

你当前操作的关键错误是将Excel文件(.xlsx)以CSV格式导入——Excel是二进制格式,BigQuery按CSV解析时会读取到无效二进制字符(包括ASCII 0),这是报错的主要原因。以下是几种可行的解决方法:

方法一:转换为干净的CSV后导入

  1. 彻底清除ASCII 0字符:
    在Excel中对所有单元格使用组合函数替换空字符:=SUBSTITUTE(CLEAN(A1), CHAR(0), ""),下拉应用到所有列后,复制并粘贴为值。
  2. 正确导出CSV:
    • 点击「文件」→「另存为」,选择格式为CSV (逗号分隔)(*.csv)
    • 保存时选择「仅保存活动工作表」(若有多工作表),编码选择UTF-8(部分Excel版本需通过「工具」→「Web选项」→「编码」设置)
  3. 上传并导入:
    将处理后的CSV上传到GCS,再通过BigQuery创建表菜单选择CSV格式,自动检测Schema即可。

方法二:直接导入Excel文件(无需转CSV)

BigQuery原生支持.xlsx格式导入,无需手动转CSV:

  • 在BigQuery创建表菜单中,「文件格式」选择Excel而非CSV
  • 若文件包含多工作表,指定要导入的工作表名称(默认导入第一个)
  • 开启「自动检测Schema」,完成导入配置后执行创建操作

方法三:用命令行工具导入(适合批量或复杂场景)

使用bq命令行工具直接导入Excel文件,避免GUI的格式识别问题:

# 基本导入命令(自动检测Schema,导入第一个工作表)
bq load --source_format=EXCEL --autodetect your_dataset.your_table gs://nyc-car-crashes/Motor_Vehicle_Collisions_Details.xlsx

# 指定工作表导入
bq load --source_format=EXCEL --autodetect --sheet="Sheet1" your_dataset.your_table gs://nyc-car-crashes/Motor_Vehicle_Collisions_Details.xlsx

额外验证步骤

如果转换后的CSV仍有ASCII 0字符,可使用文本编辑器(如Notepad++)打开:

  • 开启「视图」→「显示符号」→「显示所有字符」,查找NUL标记(即ASCII 0)
  • 全选替换为空字符,保存后再上传

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 09:37:23