Удалить все пробелы, табуляцию, символы и т.д. из String Java?
import java.io.*;

public class CharCleaner {

	public static void main(String[] args) throws IOException {


		try (
				Reader reader = new BufferedReader(new FileReader(new File("sourceFile.txt")));
				Writer writer = new BufferedWriter(new FileWriter(new File("resultFile.txt")))
		) {

			int ch;

			while ((ch = reader.read()) != -1) {
				if (Character.isAlphabetic(ch)) {
					writer.write(ch);
				}
			}


			writer.flush();
		} catch (IOException e) {
			e.printStackTrace();
		}

	}

}
Не грузит весь фал в память, при чтении и записи файла есть буферизация, в процессе работы не создает кучу String объектов методами replace*
Вот недавно писал для замены строк в текст фаиле с 001, 002, 003, 004.... 500 хД чуток переделал, там где стринги таб, и ньюлайн, просто добавь еще твои варианты и вставь в лупе доп строку для этого стринга. Т.е. просто сделай все нужные варианты, которые нужны именно тебе. В данном же примере я сделал только пробелы и переходы на новую строкуimport java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.io.LineNumberReader;
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;

public class Replace {

	public static void main(String[] args) throws IOException{	
		
		LineNumberReader  lnr = new LineNumberReader(new FileReader(new File("C:/test.txt")));
		lnr.skip(Long.MAX_VALUE);
		System.out.println(lnr.getLineNumber() + 1 + " summary rows"); 
		lnr.close();
			
		Path path = Paths.get("C:/test.txt");
		Charset charset = StandardCharsets.UTF_8;
		
		String content = new String(Files.readAllBytes(path), charset);
		
		String tab = " ";
		String newLine = "\n";
		for (int i = 0; i < lnr.getLineNumber() + 2; i++) {					
			content = content.replaceAll(tab, "");
			content = content.replaceAll(newLine, "");
			Files.write(path, content.getBytes(charset));
		}	
	}
}