До выхода версии 1.4 возможности для чтения и записи файлов с изображениями в Java SE были весьма ограниченным. Например, считывать можно было только файлы формата GIF и JPEG, а записывать официально вообще нельзя было никаких графических файлов.
Теперь ситуация выглядит значительно лучше. Еще в Java SE 1.4 появился пакет javax.imageio с готовыми средствами для чтения и записи нескольких наиболее типичных форматов файлов, а также средой для разработки своих собственных средств для чтения и записи файлов других форматов. Что касается версии Java SE 6, то в ней поддерживаются такие форматы файлов, как GIF, JPEG, PNG, BMP(растровый формат для Windows) и WBMP(Wireless Bitmap — растровый формат для беспроводных сетей). В прежних версиях из-за патентных ограничений возможность записи файлов формата GIF не поддерживалось.Основные предлагаемые в библиотеке возможности выглядит чрезвычайно просто. Для загрузки рисунка применяется статический метод read() класса ImageIO:
1 2 |
File f = ...; BufferedImage image = ImageIO.read(f); |
Класс ImageIO выбирает соответствующую программу чтения на основе типа файла. Он проверяет расширение файла и соответствующие значение в заголовке файла. Если для чтения данного файла нельзя найти подходящий программы или она не может расшифровать содержимое, то метод read() возвращает значение null.
Запись рисунка в файл осуществляется так же просто, как и чтение:
1 2 3 |
File f = ...; String format = ...; ImageIO.write(image, format, f); |
Строка format определяет формат рисунка(например, JPEG или PNG). Класс ImageIO выбирает соответствующую программу записи и сохраняет рисунок.
Сломался компьютер в Днепропетровске? Не беда! Наша компания http://remcomp.dp.ua осуществляет ремонт компьютеров и ноутбуков в Днепропетровске и мы всегда готовы предложить Вам помощь г, связанную с ремонтом оборудования или обслуживанием программного обеспечения на дому.