不喜欢广告? 无广告 今天

NDJSON 格式化与验证工具

数据开发人员文本
广告 移除?

或者

选项

统计信息和每行错误将在此处显示。
广告 移除?

指导

NDJSON格式化与验证工具

NDJSON 格式化与验证工具

请将newline-delimited JSON(NDJSON / JSON Lines)文档粘贴到输入框中,或使用上传器上传文件,一次性检查每个记录。每行独立解析,因此一个损坏的记录不会隐藏其他记录。该工具会报告有效和无效行数、最常见的顶层键以及任何解析失败行的精确错误信息——非常适合日志流、BigQuery导出和Elasticsearch批量数据。

如何使用

  1. 请将您的NDJSON内容粘贴到输入框中,或使用上传器上传 .ndjson / .jsonl / .txt 文件。
  2. 选择一个格式模式: 紧凑 保持每行一个记录(真正的NDJSON),或 美化 将每个记录重写为带缩进和空行分隔符的格式。
  3. 切换 跳过空行 如果您的数据包含多余的空行并希望删除它们,以及 排序对象键 以实现可重复的差异和稳定的哈希值。
  4. 查看统计面板中的总行数、有效行数、无效行数以及每行错误信息,然后复制或下载格式化输出。

特征

  • 逐行验证 ——每行独立解析,并显示精确的JavaScript JSON.parse错误信息和原始行号。
  • 紧凑和美化模式 ——根据需要在严格的一行一个记录NDJSON和人类可读的多行格式之间切换。
  • 顶层键分布 ——查看在有效记录中最常见的顶层字段,有助于临时发现模式。
  • 排序键 ——深度排序对象键,以实现可重复的差异和稳定的哈希值。
  • 空行处理 ——统计并可选地移除日志流中某些工具插入的空行。
  • 文件和剪贴板友好 ——可上传大文件,将清理后的输出复制到剪贴板,或下载为可直接管道的NDJSON文件。
  • 完全在浏览器中运行 ——不会上传任何内容;该工具对敏感日志数据和导出是安全的。

何时使用NDJSON

NDJSON是流式JSON的行业标准格式:Docker和Kubernetes容器日志、Elasticsearch _bulk 体、BigQuery导出、OpenAI批量作业和Loki数据摄入均使用每行一个独立的JSON对象。标准JSON格式器在遇到第一个换行符时就会崩溃,而本工具正是为此类格式专门设计的。

广告 移除?

常问问题

  1. JSON与NDJSON的区别是什么?

    标准JSON每个文档编码一个值(对象、数组、数字、字符串、布尔值或null)。NDJSON(也称为JSON Lines或LDJSON)每行编码一个独立的JSON值,用换行符分隔。NDJSON是可流式处理的:解析器可以逐行处理记录而无需将整个文件加载到内存中,因此它在日志管道和批量API中占据主导地位。

  2. 为什么NDJSON记录不允许包含未转义的换行符?

    换行符是NDJSON中的记录分隔符,因此值中的任何未转义换行符都会将一个记录分割成两个。该格式要求JSON编码器为每个记录生成紧凑表示,嵌入的换行符必须写为转义序列“\n”。因此,美化后的JSON(带缩进的多行对象)不是有效的NDJSON。

  3. NDJSON是否与JSON Lines和LDJSON相同?

    实际上,是的。NDJSON(newline-delimited JSON)、JSON Lines(jsonlines.org)和LDJSON(line-delimited JSON)都描述了相同的约定:每行一个JSON值,用U+000A换行符分隔。在是否容忍尾随空白、UTF-8 BOM或回车换行符等细节上存在细微差异,但所有值得使用的解析器都接受简单的LF分隔记录。

  4. 逐行验证与整体文档验证有何不同?

    使用普通JSON解析器时,第一个语法错误会终止整个解析过程,并掩盖后续问题。逐行验证为每行运行独立解析器,因此每个记录要么成功,要么显示其自身的错误信息和行号。这可以隔离损坏的记录,允许您继续导入有效记录,并使比较生产者变更的差异更加容易。

  5. NDJSON应使用什么MIME类型和文件扩展名?

    NDJSON的IANA注册媒体类型是application/x-ndjson,application/jsonl也被广泛接受。常用的文件扩展名是.ndjson和.jsonl。使用.json作为换行分隔文件的扩展名在技术上是错误的,并会破坏那些根据扩展名自动检测格式的工具。

想要享受无广告的体验吗? 立即无广告

安装我们的扩展

将 IO 工具添加到您最喜欢的浏览器,以便即时访问和更快地搜索

添加 Chrome 扩展程序 添加 边缘延伸 添加 Firefox 扩展 添加 Opera 扩展

记分板已到达!

记分板 是一种有趣的跟踪您游戏的方式,所有数据都存储在您的浏览器中。更多功能即将推出!

广告 移除?
广告 移除?
广告 移除?

新闻角 包含技术亮点

参与其中

帮助我们继续提供有价值的免费工具

给我买杯咖啡
广告 移除?