PDA

Просмотр полной версии : запись с compress()


Dezar
06.01.2011, 10:26
здравствуйте.
у меня странная(вроде) проблема.

пытаюсь записать ByteArray в файл.
запись происходит только если делаю компрессию.
если нет компрессии файл для записи создаётся, но пустой.

я думал дело в объеме переданных данных,но ошибся.он так не пишет даже байты.с компрессией готов записывать мегабайты.
читал документацию, но не нашел ничего на подобную тему.
кто знает, в чем дело???

скрипт as3

//MBytes - тут байты

var loadS:URLLoader = new URLLoader();
loadS.dataFormat = URLLoaderDataFormat.BINARY;

var url_req:URLRequest = new URLRequest(urls+"rec2.php");
var variables:URLVariables = new URLVariables();
variables.rec = MBytes.toString();
url_req.data = variables;
url_req.method = URLRequestMethod.POST;
loadS.load(url_req);



скрипт рнр


<?php
$id=$_POST['rec'];
$fp = fopen("S", "w+");
fputs($fp, $id);
fclose($fp);
?>

Psycho Tiger
06.01.2011, 16:46
MBytes.toString()
O_X
А прикрепить файл через data?

Dezar
06.01.2011, 19:59
O_X
вы правы))
прикрепил файл и все ок стало.
однако, интереса ради вопрос остался открытым.
почему с компрессиеи инфа записывалась,а без нет?

Psycho Tiger
06.01.2011, 20:22
Ну вообще есть такие вещи как непечатаемые символы. Я думаю в них дело, однако случай действительно забавный.

etc
06.01.2011, 20:29
По-моему просто в LZW нет нулевого байта, поэтому и записывается.

Dezar
06.01.2011, 20:33
однако)
спасибо за ответы.