Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > удалить первую строку из fileOutputStream


Автор: Lesli 25.10.2009, 16:15
Всем привет!
Есть веб сервис которому клиент при вызыве передает бинарные данные большого объема.
В сервисе эти данные пишутся в файл.
Собственно вопрос как удалить первую строку этого файла?
Хотелось бы просто писать данные со второй строки а не перезаписывать файл(так как он большой).. это возможно?

Вот код где происходит запись в файл
Код

File f = new File(serverFolder + exchangeService0.getInputType() + ".txt");
FileOutputStream fileOutputStream = new FileOutputStream(f);
DataHandler param = exchangeService0.getBinaryData();
param.writeTo(fileOutputStream);
fileOutputStream.flush();
System.out.println("Service saved the file to " + serverFolder + exchangeService0.getInputType() + ".txt");


Если без перезаписи не возможно то подскажите как вообще лучьше поступить в моем случае?

Автор: AntonSaburov 26.10.2009, 13:41
У бинарного файла СТРОКА ? Это как это ? Он на то и бинарный, что у него строк нет - просто поток байтов.

Автор: Sibit 26.10.2009, 15:50
А разве нельзя первые несколько байт считать куда-нибудь, а все остальное в файл?
Т.е делать примерно так
Код

DataHandler param = exchangeService0.getBinaryData();
while(!надоело){
param.getInputStream().read();
}


А exchangeService0 какого типа. может можно у него лишнее считывать.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)