@go2goj

С какой кодировкой работают DataOutputStream и DataInputStream?

С какой кодировкой работают DataOutputStream и DataInputStream? Например:
import java.io.DataOutputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class Soltuion {

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

		// Как записывает true:
		// записали:
		DataOutputStream fileOutput = new DataOutputStream(new FileOutputStream("C:\\testjava.txt"));
		fileOutput.writeBoolean(true);

		// читаем:
		FileInputStream fileStream = new FileInputStream("C:\\testjava.txt");
		System.out.println(fileStream.read()); // 1

		// Как записывает double:
		// записали:
		fileOutput.writeDouble(3.2);

		// читаем:
		System.out.println(fileStream.read()); // 64
		System.out.println(fileStream.read()); // 9
		System.out.println(fileStream.read()); // 153
		System.out.println(fileStream.read()); // 153
		System.out.println(fileStream.read()); // 153
		System.out.println(fileStream.read()); // 153
		System.out.println(fileStream.read()); // 153
		System.out.println(fileStream.read()); // 154
		System.out.println(fileStream.read()); // -1
	}
}

Вот как потом в блокноте эту информацию увидеть (расшифровать):
5df36ed03bbdf211686120.png
  • Вопрос задан
  • 225 просмотров
Решения вопроса 1
@go2goj Автор вопроса
DataOutputStream и DataInputStream работают со своей особой кодировкой, которую можно посмотреть в исходниках. Это позволяет хранить boolean-значение в 1 байте и т. п.
Очевидными особами в блокноте такое не прочитать, потому что блокнот не знает вышеупомянутый кодировку. Можно читать через DataInputStream.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
zagayevskiy
@zagayevskiy Куратор тега Java
Android developer at Yandex
В таком варианте - ни в какой кодировке. Ты пишешь туда чистые первозданные байты, они никак не конвертируются. Затем ты эти байты по-одному читаешь.
https://docs.oracle.com/javase/7/docs/api/java/io/...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы