Skip to main content
I
Uni
UNICODE
Tools/Batch File Processing Engine

High-Performance Bulk File Processing Engine

Batch convert, sanitize, and normalize `.txt`, `.csv`, `.json`, `.srt`, and `.vtt` files in 1 click with 100% client-side privacy and instant ZIP export.

1. Select Batch Conversion or Sanitization Operation

Runs parallel in browser memory (zero server transmission)

Drop files here or click to browse

Supports batch upload of .txt, .csv, .json, .srt, .vtt, .md, .html, .xml, .inp files. Unlimited file size, processed instantly in local memory.

Bulk File Unicode Processing & Sanitization

Batch process and sanitize directories of text/subtitle files using multiprocessing.

1# Python 3 - Batch Unicode Sanitizer & Converter
2import os
3import re
4from pathlib import Path
5from concurrent.futures import ProcessPoolExecutor
6
7# Pattern: Zero-width characters and invisible AI tracking tokens
8ZW_PATTERN = re.compile(r'[​-‍⁠‎‏‪-‮­]')
9
10def sanitize_file(file_path: Path) -> int:
11 try:
12 content = file_path.read_text(encoding='utf-8', errors='replace')
13 cleaned, count = ZW_PATTERN.subn('', content)
14 if count > 0:
15 file_path.write_text(cleaned, encoding='utf-8')
16 return count
17 except Exception as e:
18 print(f"Error processing {file_path}: {e}")
19 return 0
20
21def batch_process_folder(dir_path: str):
22 target_dir = Path(dir_path)
23 files = [f for f in target_dir.rglob('*') if f.suffix in ('.txt', '.csv', '.srt', '.vtt', '.json')]
24 print(f"Found {len(files)} files to sanitize...")
25
26 with ProcessPoolExecutor() as executor:
27 results = list(executor.map(sanitize_file, files))
28
29 print(f"Done! Cleaned {sum(results)} total invisible watermarks across {len(files)} files.")
30
31if __name__ == '__main__':
32 batch_process_folder('./documents')
Python 3Zero external runtime dependencies • Standard Library
UTF-8 & Unicode 16.0 Compatible

High-Throughput Batch Text Encoding & Zero-Knowledge Security

Enterprise language translation workflows, subtitle localization agencies, and machine learning NLP pipelines often handle thousands of raw text assets corrupted by legacy single-byte encodings (such as InPage Urdu, Bijoy Bangla, or Kruti Dev Hindi) or contaminated by invisible zero-width AI watermarks.

100% In-Browser Privacy:

Unlike cloud conversion portals that upload your confidential files to remote servers, iloveunicode processes entire directory batches locally using JavaScript Web Streams and HTML5 FileReader memory buffers. No data is ever transmitted across the network.

Subtitle Timecode Integrity:

Our subtitle cleaner parses standard SubRip (.srt) and WebVTT (.vtt) files to cleanly convert complex foreign script dialogue and strip invisible characters without modifying timecode cues (00:01:23,456 --> 00:01:25,789).

Frequently Asked Questions (FAQs)

Can I convert multiple InPage (.inp or .txt) files to Unicode at once?+

Yes! Simply drag and drop all your InPage files into the dropzone, select "InPage Nastaliq → Unicode", click "Convert All Files", and export all converted files together as a single ZIP archive.

Will batch converting subtitle files (.srt or .vtt) break movie synchronization?+

No. Selecting the "Subtitles (.srt / .vtt Safe)" mode selectively converts the dialogue lines while strictly preserving frame indices and timecode arrows (00:00:00,000 --> 00:00:00,000) intact.

Is there any limit on how many files I can upload at once?+

Because all conversions execute 100% inside your computer's local browser memory using modern Web Workers, you can process dozens of files simultaneously with zero server timeouts.

How does the ZIP archive generator work without sending files to a server?+

We engineered a pure client-side PKZIP builder in TypeScript that constructs standard ZIP file records and central directory headers directly in browser RAM, triggering an instant local blob download.

Can I use this tool to strip hidden AI watermarks from training datasets?+

Yes. The "Strip AI Watermarks (ZWSP)" operation scans all text files in your batch for 17+ zero-width tokens (U+200B through U+200D, U+FEFF, and bidirectional Trojan Source overrides) and cleans them in seconds.