Code Explainers

Code explainers tagged #file-io

java
public final class ChunkSorter {
 
    private static final int MAX_LINES_PER_CHUNK = 100_000;
 

External merge sort in Java

external-sort merge-sort priority-queue
Advanced 10 steps
php
<?php
 
function streamFileWithRanges(string $path, ?string $rangeHeader): void
{

How HTTP range requests stream files in PHP

http-range-requests streaming partial-content
Intermediate 10 steps
java
public final class IniParser {
 
    private static final Pattern SECTION = Pattern.compile("\\[(.+?)\\]");
 

Parsing INI files in Java

parsing regex state-machine
Intermediate 10 steps
ruby
module Dotenv
  LINE = /\A\s*(?:export\s+)?([A-Za-z_][A-Za-z0-9_]*)\s*=\s*(.*?)\s*\z/
 
  module_function

Parsing a .env file in Ruby

parsing regular-expressions environment-variables
Intermediate 8 steps
python
import hashlib
from collections import defaultdict
from pathlib import Path
 

Finding duplicate files by size then hash

hashing file-io deduplication
Intermediate 7 steps
rust
use std::fs::File;
use std::io::{Read, Seek, SeekFrom};
 
#[derive(Debug)]

Parsing an HTTP Range header in Rust

http-range parsing file-io
Intermediate 10 steps
ruby
require "charlock_holmes"
 
class TextFileNormalizer
  DEFAULT_CONFIDENCE = 60

Normalizing text files to clean UTF-8 in Ruby

encoding text-processing file-io
Intermediate 8 steps
java
@GetMapping("/files/{id}")
public ResponseEntity<StreamingResponseBody> download(
        @PathVariable String id,
        @RequestHeader(value = HttpHeaders.RANGE, required = false) String rangeHeader) throws IOException {

HTTP range requests in Spring

http-range streaming file-io
Advanced 10 steps
rust
use std::collections::BTreeSet;
use std::fs::File;
use std::io::{self, BufRead, BufReader, BufWriter, Write};
use std::path::Path;

Deduplicating and sorting words in Rust

file-io btreeset string-processing
Intermediate 6 steps
java
public final class BomAwareReader {
 
    private static final char UTF8_BOM = '\uFEFF';
 

Skipping the UTF-8 byte-order mark in Java

file-io encoding byte-order-mark
Intermediate 6 steps
python
import wave
import os
from dataclasses import dataclass
 

Reading WAV metadata into a dataclass

dataclass audio file-io
Beginner 5 steps
java
public class DuplicateFinder {
 
    public Map<String, List<Path>> findDuplicates(Path root) throws IOException {
        Map<String, List<Path>> byHash = new HashMap<>();

Finding duplicate files by content hash

hashing file-io streams
Intermediate 8 steps
rust
use std::collections::HashMap;
use std::fs::File;
use std::io::{self, BufRead, BufReader};
use std::path::Path;

Parsing INI files in Rust

parsing file-io hashmap
Intermediate 9 steps
python
from pathlib import Path
 
from PIL import Image, ImageOps
 

Batch image resizing with Pillow

image-processing batch-jobs error-handling
Intermediate 8 steps
python
from pathlib import Path
 
import chardet
 

Reading text files of unknown encoding in Python

encoding byte-order-mark fallback
Intermediate 8 steps
java
package com.example.inventory;
 
import org.apache.commons.csv.CSVFormat;
import org.apache.commons.csv.CSVParser;

Reading and writing CSV with Commons CSV

csv-parsing file-io try-with-resources
Intermediate 7 steps
python
import os
import tarfile
from pathlib import Path
 

Safely compressing and extracting tar.gz archives

file-io compression path-traversal
Intermediate 6 steps
java
public final class ZipExtractor {
 
    private final Path targetDir;
 

Extracting a zip safely in Java

path-traversal streams file-io
Intermediate 8 steps