Пробел не в файле. То, что вы видите, - это не текст - это список шестнадцатеричных чисел, и число одинаково, имеет ли он пробел в середине или нет. Таким образом, все равно остается четыре байта, независимо от того, записываете ли вы их как 89 50 4e 47
или 89504e47
или как (137, 80, 78, 71)
или действительно как �PNG
.
Вы, вероятно, видите это, потому что Sublime Text обнаруживает, что содержимое файла не может быть разумно показано в виде текста. Таким образом, он выбирает альтернативное представление - каждый байт в виде двух шестнадцатеричных цифр. (Для лучшего примера, посмотрите на этот плагин для сублиметекста.)
Напомним, что каждый файл состоит из байтов, а байт представляет собой число от 0 до 255 десятичных (или от 0 до шестнадцатеричного FF). Хотя текстовые редакторы обычно показывают каждый байт как букву, это не единственный способ сделать это.