У меня есть исходный код программы C# для преобразования файлов. Мне нужно написать Java-приложение с той же функциональностью. Но у меня проблемы с (InputStream.Position). Например:
//Open Files
FileStream input = new FileStream(ltcFile, FileMode.Open);
FileStream output = new FileStream(txtFile, FileMode.Create);
//Skip LTC Header
const int LTC_HEADER_LENGTH = 8;
input.Position = input.Position + LTC_HEADER_LENGTH;
//Write Unicode Text Header
output.WriteByte(0xEF);
output.WriteByte(0xBB);
output.WriteByte(0xBF);
//Get Data Size
int b, dataSize;
dataSize = 0;
for (int i = 0; i < 4; i++)
{
b = input.ReadByte();
dataSize = dataSize + b * (int)System.Math.Pow(256, i);
}
//Set ID Table Position
long idPos = dataSize + LTC_HEADER_LENGTH + 4;
//Skip Unknown Data
input.Position = input.Position + 4;
Какой эквивалент в Java может достичь этого (mark(), skip()
)?:
//Skip Unknown Data
input.Position = input.Position + 4;
0
De-Bill
27 Ноя 2022 в 08:34
1 ответ
InputStream.skip(long n)
, вероятно, то, что вы ищете, согласно JavaDoc пропускает следующие n
байтов потока.
2
ocean moat
27 Ноя 2022 в 08:47
Похожие вопросы
Новые вопросы
java
Java — это высокоуровневый объектно-ориентированный язык программирования. Используйте этот тег, если у вас возникли проблемы с использованием или пониманием самого языка. Этот тег часто используется вместе с другими тегами для библиотек и/или фреймворков, используемых разработчиками Java.