BufferedWriter записывает случайную строку как значение NULLJAVA

Программисты JAVA общаются здесь
Anonymous
BufferedWriter записывает случайную строку как значение NULL

Сообщение Anonymous »

Я работаю с устаревшим кодом, код был написан на Java 5 и 6.
Недавно они обновили машины, на которых используется этот код, для использования Java 8. Они перекомпилировали этот старый код в JAVA 8, он не дал сбоя, но теперь наблюдается странное поведение.
При записи в файл он случайным образом записывает строку как нулевые или пустые символы, создавая пустое пространство при визуализации файла. Сгенерированный файл представляет собой смесь обычного текстового и двоичного файла.
Он считывает изображение и записывает некоторые данные перед записью части изображения. этот устаревший код работает без изменений в течение многих лет, и при регистрации строки перед записью она отображается в журналах правильно.
Как видно, он постоянно сбрасывает BufferedWriter после передачи строки для записи, FileOutputStream не имеет никаких ошибок

Код: Выделить всё

ImageInputStream isb = ImageIO.createImageInputStream(file);
Iterator iterator = ImageIO.getImageReaders(isb);
if (iterator == null || !iterator.hasNext())
{
throw new IOException("Image file format not supported by ImageIO: ");
}
ImageReader reader = (ImageReader) iterator.next();
reader.setInput(isb);
int nbPages = reader.getNumImages(true);
outputFileStream = new FileOutputStream(getPathExit(), true);
fileWriter = new BufferedWriter(new OutputStreamWriter(outputFileStream));
byte[] block = new byte[GeneratingIssuedFileConstants.BLOCK_SIZE_IMAGE];
String str = null;
int total=0;
for(int p=0;p -1)
{
for (int z=bytesRead; z

Вернуться в «JAVA»