Я хочу, чтобы добавить эту таблицу в файле:Java: как написать короткий массив как массив байтов в файле
public static final short[] FMW = {0x18, 0xC1, 0x00, 0x00, 0x36, 0xC1, 0x00}
мне нужно использовать короткий массив, потому что значение 0xC1 не распознается, как у байт.
Затем я хочу поставить этот массив в моем файле:
DataOutputStream out = null;
try {
out = new DataOutputStream(new FileOutputStream(file));
for (short anInt : FMW)
out.write((byte)anInt);
out.close();
} catch (IOException e) {
...
Но когда я прочитал это содержимое файла после этого, это не правильно:
try {
FileReader reader = new FileReader(file);
if (file.length() < offset+count) count = (int)(file.length() - offset);
char[] rawdata = new char[count];
reader.read(rawdata, 0, FMW.length);
...
Мой RAWDATA содержит:
[0] : 0x18
[1] : 0xFFFD
[2] : 0x00
[3] : 0x00
[4] : 0x36
[5] : 0xFFFD
[6] : 0x00
Благодарим за помощь!
Нет, проблема замирает то же: у меня есть 0xFFFD вместо того, чтобы иметь 0xC1 в моем случае. – anthony