gpt4 book ai didi

javascript - 这是什么编码/为什么这些 .txt 文件不是纯文本?

转载 作者:行者123 更新时间:2023-11-30 15:39:01 24 4
gpt4 key购买 nike

我正在浏览the deck.gl repo .它附带了一些带有文本文件的示例,例如 this one .这些文件具有 .txt 扩展名,但不是纯文本:

!OohmwFjqwbMg@[?ADKJYXF@^?N?FAD

=wnmwFvvwbM_@WNg@@@@C?C_@UA?AD@?Of@_@UTu@??BK?A??FUVP?@JF?AVP?@JF?AVPGTA?EL@?
=urmwF|swbM_@UFS@@BK?C@C@A@E?CIGA?GE?CIGA@CF?@ABA@CJ@@GR]Ud@wA\T?@DB?AXP?@DB?A\T

<aymwFnvwbMaAOKCA@OKPk@CCDKAADKAADKAADKAADKAAL_@fBjAIVCCEL

示例还包含 JavaScript 文件,这些文件看起来好像是用来解码这些文件的,例如 this one for the file above .

这里到底发生了什么?我认为这是一种减少数据大小的方法,但为什么不只依靠浏览器压缩呢?

当文件显然是纯文本时,为什么要使用纯文本扩展名?为什么要使用自定义解码器?

最佳答案

它看起来像是使用字节值来编码坐标/GeoJSON 特征的自定义编码。

例如,/dist-demo/data/building-data.txt 中的这一行:

!GqgmwFrhwbM}C}@@K@IBO@IlBh@BOBMn@PHBGd@KC

使用 decodePolyline() 实用函数解码到这个数组中:

[
[0.00004,0.00001],
[40.70541,0.00002],
[40.7062,-74.01624],
[40.70619,-74.01593],
[40.70618,-74.01587],
[40.70616,-74.01582],
[40.70615,-74.01574],
[40.7056,-74.01569],
[40.70558,-74.0159],
[40.70556,-74.01582],
[40.70532,-74.01575],
[40.70527,-74.01584],
[40.70531,-74.01586],
[40.70537,-74.01605],
[40.70537,-74.01603]
]

JSON 格式要大得多。

所以我的猜测是,主要原因是能够使用仍然可移植/可缓存的较小数据文件。它仍然是基于行的明文,因此也是可区分的。

此外,这些文件仍然是可压缩的。我假设一个完整的 JSON 文件不仅开始时更大,而且还表现出不如该文件有利的压缩特性。对 building-data.txt 的快速测试显示 gzip/deflate 的压缩比大约为 2:1(139,089 字节压缩为 72,660 字节)。原始 JSON 格式的同一文件的压缩结果不会接近这个结果。

关于javascript - 这是什么编码/为什么这些 .txt 文件不是纯文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41097735/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com