JSONL 验证器

即时验证您的 JSONL(JSON Lines)文件。逐行检查 JSON 语法是否正确。100% 客户端处理,数据不会离开您的浏览器。

输入 JSONL

拖拽 .jsonl 文件到此处,或点击浏览

支持 .jsonl, .ndjson, .json, .txt

作者: Jerry Fan更新于 2026年2月

错误速查:哪里坏了、怎么修

几乎所有非法 JSONL 文件都出自六种原因之一。这张表把您看到的错误映射到真正的字节级成因和最快的修法 —— 按 RFC 8259,JSON 对这些全都严格要求,JSONL 在此之上又加了「一行一条记录」规则:

坏行长这样问题所在修法
{"a": 1,}尾随逗号 —— 在 JavaScript 里合法,在 JSON 里非法删掉 } 或 ] 前面的逗号
{'a': 1}单引号 —— JSON 字符串必须用双引号把键和字符串值上的 ' 换成 "
{"note": "line one字符串内未转义的换行把记录拆到了多行转义成 \n,让记录保持在同一行
{"a": 1}UTF-8 BOM 粘在第一条记录前面保存时不带 BOM,或去掉开头三个字节
{"a": 1} {"b": 2}一行上有两条记录 —— 解析器会视为尾部垃圾每条记录独占一行
(空白行)严格来说不算记录;有的解析器报错,有的跳过删除空白行,或把消费方配置为跳过它们

如何验证 JSONL 文件

JSONL 验证会检查文件的每一行,确保其包含有效的 JSON。每行必须是完整、可解析的 JSON 值——通常是一个 JSON 对象。

我们的验证器完全在浏览器中读取您的 JSONL 文件,不会将任何数据上传到服务器。只需粘贴 JSONL 文本或拖入文件,验证结果即刻呈现。

存在错误的行会显示行号和具体的错误信息。您可以复制验证报告与团队共享,或用于修复问题。

常见错误与解决方案

JSON 对象中的尾随逗号

JSON 对象最后一个键值对后面的尾随逗号(例如 {"name":"Alice",})不是有效的 JSON。删除每行最后一个属性后的逗号即可修复这个常见语法错误。

属性键未加引号

JSON 要求所有属性键都用双引号包裹。像 {name:"Alice"} 这样的键会验证失败。请确保所有键都使用双引号:{"name":"Alice"}。

字符串中的无效转义序列

JSON 仅支持特定的转义序列(\n、\t、\"、\\ 等)。像 \x 或 \' 这样的无效序列会导致解析错误。请使用正确的 JSON 转义序列或将特殊字符编码为 Unicode(\uXXXX)。

在 CI 和命令行里验证

浏览器验证器是给人用的;在管线里,同样的检查只需一行命令。两条命令都是流式处理,所以远超内存大小的文件也能处理:

# jq: 只有每一行都能解析时退出码才是 0(流式,不打印任何内容)
jq -e 'empty' data.jsonl && echo OK
# Python: 报告第一处坏行及其行号
python3 - <<'PY'
import json, sys
for i, line in enumerate(open('data.jsonl'), 1):
if not line.strip():
continue
try:
json.loads(line)
except json.JSONDecodeError as e:
sys.exit(f'line {i}: {e}')
print('OK')
PY

注意两者的检查范围:这些命令逐行检查 JSON 语法。而验证字段结构 —— 必填键、类型、取值范围 —— 属于 schema 验证,是另一个层面,详见我们的 JSON Schema 指南。

什么是 JSONL 验证?

JSONL 验证是检查 JSONL 文件中每行是否包含语法正确的 JSON 的过程。在使用 JSONL 文件进行机器学习训练、API 批量操作或数据管道处理之前,这一步至关重要。

验证可以捕获的常见问题包括:缺少或多余的逗号、未加引号的键名、尾随逗号、括号不匹配、无效的转义序列以及 BOM 字符等编码问题。

常见用例

数据质量保证

在导入数据库或分析平台之前验证 JSONL 导出,防止数据损坏。

机器学习数据集验证

在上传之前检查 OpenAI 微调数据集和 Hugging Face 训练数据的格式正确性。

调试数据管道

识别 JSONL 日志文件和流式数据输出中的格式错误行。

上传前验证

在上传到要求严格格式合规的 API 之前验证 JSONL 文件。

CI/CD 流水线验证

将 JSONL 验证作为 CI/CD 流水线中的一个步骤,在数据文件到达生产环境之前捕获格式错误。

Schema 一致性检查

验证 JSONL 文件中所有行是否都能正确解析,并直观检查记录是否遵循一致的 schema 结构。

常见问题

JSONL 验证器检查什么?

JSONL 验证检查文件中每个非空行是否为语法有效的 JSON。它验证括号匹配、字符串引号、转义序列以及整体 JSON 结构是否正确。

这个 JSONL 验证器只检查语法还是也检查 Schema?

是的。所有验证都在您的浏览器本地进行,不会将任何数据发送到服务器。您的 JSONL 内容永远不会离开您的设备。

这个 JSONL 验证器会上传我的文件吗?

可以。验证器可以处理大型文件,因为它独立处理每一行。对于非常大的文件(100MB 以上),验证可能需要几秒钟。

可以用这个 JSONL 验证器验证 NDJSON 吗?

查看每个无效行的错误详情。常见修复方法包括添加缺失的引号、删除尾随逗号以及确保括号匹配。您也可以使用我们的 JSONL 格式化工具帮助识别格式问题。

为什么有效的 JSON 文件无法通过 JSONL 验证?

验证器仅检查 JSON 语法,不检查 schema 一致性。每行独立验证以确保其为有效的 JSON。如需 schema 验证,您需要在语法检查之上使用 JSON Schema 验证器。

如何修复 JSONL 验证错误?

可以。验证器接受 .jsonl、.ndjson、.json 和 .txt 扩展名的文件。无论扩展名如何,内容都以相同方式处理——每个非空行都作为 JSON 进行验证。

可以验证包含空行的 JSONL 文件吗?

空行和仅包含空白字符的行在验证时会自动跳过。它们不会被计为错误,也不会出现在验证报告中。这符合 JSONL 规范。

这个验证器能处理的最大文件大小是多少?

验证器只识别和报告错误,不会自动修复。自动修复可能会改变原始数据的含义。请根据错误详情手动修正每个问题,然后重新验证以确认所有行都通过。

相关工具与指南