Извиняюсь если не в тот раздел написал.
Есть такой чат, называется галактика знакомств. если открыть через WinRar сам клиент, то в папке img будет файл Res, в этом файле хранется все картинки клиента, для того чтобы распаковать/запокавать этот файл я написал скрипт на php:
if(isset($a) && isset($name)){
if($a == "unpack"){
$getf = file_get_contents("img128x160/$name");//открываем файл Res
$expl = explode("‰PNG", $getf);//разбиваем из файла Res каждую картинку в массив
$c = count($expl);//подсчитываем число картинок
echo "Операция успешно выполнена!<br>--------------------------------------------------------------------------------<br>";
for($i = 1;$i<$c;$i++){
$file = fopen("img/$i.png","a");//вытаскиваем из массива картинку и заносим в файл
fputs($file, "‰PNG$expl[$i]");
fclose($file);
echo "<img src='img/$i.png'/> - $i<br>";
}
}
if($a == "pack"){//упаковка в файл Res
$count = scan_dir("./img");//открываем папку img и подсчитываем число картинок в ней
$tmpsrc = "";//переменная в которую будут помещены все картинки
for($i = 1;$i < $count+1;$i++){
$getf = file_get_contents("img/$i.png");//открываем картинку и дописываем ее в переменную $tmpsrc
$tmpsrc = $tmpsrc.$getf;
}
$fo = fopen("pack/$name", "a");// Создаем файл Res в котором будут хранится все картинки
$sours = file_get_contents("sys/$name");//Начале файла Res есть какието байты, я занес их в отдельный файл чтобы открыть их и записать на место в начале создаваемого файла Res
fputs($fo,"$sours$tmpsrc");//записываем все в файл Res
echo "Операция успешно выполнена!";
}
}
function removedir($dir){
if ($objs = glob($dir."/*")) {
foreach($objs as $obj) {
is_dir($obj) ? removeDirRec($obj) : unlink($obj);
}
}
}
?>
Так вот этот скрипт у меня работает, например взять распокавать файл и назад запокавать в файл res, то все работает. А если взять распокавать этот файл и через PhotoShop или другой редактор отредактировать любую картинку из распакованного архива, и запоковать все назад, а потом засунуть этот файл назад в jar и запустить, то в чате все картинки не показываюся. Что я неправильно делаю? Я думаю все проблемы в редакторе картинок, потомучто если я открою какую нибудь картинку она допустим будет весить 358 байт, и не трогая в ней ничего сохраню то файл будет весить 600 байт. Помогите пожалуйста
Скрип упаковщика в архиве. Вот ссылка: http://upwap.ru/717875 Пароль на архив: hackzona