[{"text": "very very"}," very very", " very very very", {"text": " very very long"}]
< /code>
hier in diesem Spielzeugbeispiel kann es offensichtlich in RAM gehalten.import zstandard as zstd
# real code used to write the very large file
def write_to_file(output_path, data_chunks, level=22):
cctx = zstd.ZstdCompressor(level=level)
with open(output_path, 'wb') as f_out:
with cctx.stream_writer(f_out) as compressor:
for idx, chunk in enumerate(data_chunks):
if isinstance(chunk, str):
pass
elif isinstance(chunk, dict):
chunk = chunk["text"]
else:
raise ValueError(f"Unrecognized chunk {type(chunk)}")
if idx == 0:
chunk = '{"text": "' + chunk
chunk = chunk.encode("utf-8")
compressor.write(chunk)
compressor.write('"}'.encode("utf-8"))
# toy example
write_to_file("test.json.zstd", [{"text": "very very"}," very very", " very very very", {"text": " very very long"}], level=22)
< /code>
Diese komprimierte Datei enthält jetzt nur eine JSON-Datei.import io
def read_zstd_lines(input_path):
dctx = zstd.ZstdDecompressor()
with open(input_path, 'rb') as compressed:
with dctx.stream_reader(compressed) as decompressor:
text_stream = io.TextIOWrapper(decompressor, encoding='utf-8')
for line in text_stream:
if line.strip():
yield json.loads(line)
next(read_zstd_lines("test.json.zstd"))
Ich suche nach einer Lösung, die IJSON ähnelt, die sie in RAM iterativ durch (potenziell Größenanpassungsabwände) (oder nur in den Töpfen nicht größer als eine feste Größe) lesen würde, aber das würde auf der komprimierten Datei wie das obige Beispiel funktionieren.
Ich habe eine sehr große (zu groß, um im RAM zu halten) .json.zstd Datei, die ich iterativ mit einem Generator von Texts Data_Chunks erstellt habe.[code][{"text": "very very"}," very very", " very very very", {"text": " very very long"}] < /code> hier in diesem Spielzeugbeispiel kann es offensichtlich in RAM gehalten.import zstandard as zstd
# real code used to write the very large file def write_to_file(output_path, data_chunks, level=22): cctx = zstd.ZstdCompressor(level=level)
with open(output_path, 'wb') as f_out: with cctx.stream_writer(f_out) as compressor: for idx, chunk in enumerate(data_chunks): if isinstance(chunk, str): pass elif isinstance(chunk, dict): chunk = chunk["text"] else: raise ValueError(f"Unrecognized chunk {type(chunk)}") if idx == 0: chunk = '{"text": "' + chunk chunk = chunk.encode("utf-8") compressor.write(chunk) compressor.write('"}'.encode("utf-8"))
# toy example write_to_file("test.json.zstd", [{"text": "very very"}," very very", " very very very", {"text": " very very long"}], level=22) < /code> Diese komprimierte Datei enthält jetzt nur eine JSON-Datei.import io def read_zstd_lines(input_path): dctx = zstd.ZstdDecompressor() with open(input_path, 'rb') as compressed: with dctx.stream_reader(compressed) as decompressor: text_stream = io.TextIOWrapper(decompressor, encoding='utf-8') for line in text_stream: if line.strip(): yield json.loads(line) next(read_zstd_lines("test.json.zstd")) [/code] Ich suche nach einer Lösung, die IJSON ähnelt, die sie in RAM iterativ durch (potenziell Größenanpassungsabwände) (oder nur in den Töpfen nicht größer als eine feste Größe) lesen würde, aber das würde auf der komprimierten Datei wie das obige Beispiel funktionieren.
Ich habe derzeit ein sehr seltsames und spezifisches Problem. Wie viele von uns dachte, erstelle ich derzeit ein -Video zu ASCII -Konverter ( in Farbe bitte ), dies gibt eine sehr große aus. TXT...
Ich habe ein Android -Telefon und möchte es in einem Webbrowser streamen. Mein Webbrowser, obwohl er am Telefon sichtbar ist.
Hier habe ich bisher versucht. // Code on android phone.
private void...
Ich habe ein Apache -Protokoll, das einige komprimierte Informationen enthält, vermutlich b/c Die Nutzlast ist groß:
EAEREAEREAEohOQgxEdqQYUAREQAREQARH4NxVCN+/SYaZZAAAAAElFTkSuQmCC , is_visible =>...
Ich habe eine große JavaScript-Datei mit über 20.000 Codezeilen. Der Code ist in Objekten organisiert, mit Funktionen wie diesen:
let module1 = {
fun1:function() {
console.log( module1 fun1 called...