Попытка раздуть спущенную строку aHash
,
Следующее возвращает не-ascii символы:
(GAppsScript 🙂
var decodedA = Utilities.base64Decode(aHash,Utilities.Charset.US_ASCII);
var decodedU = Utilities.base64Decode(aHash,Utilities.Charset.US_UTF_8);
Logger.log(Utilities.newBlob(decodedA).getDataAsString());
Logger.log(Utilities.newBlob(decodedU).getDataAsString());
(PHP 🙂
$uncompressed = gzinflate($yourFile);
echo $uncompressed;
Эта страница может сделать это http://www.alderg.com/convert.html но есть ли известная встроенная альтернатива в js / gAppscript / php?
[Обновить]Это сообщение опубликовано в другом разделе SE, и спасибо Дэвиду за его ответ. В результате base64Decode отличается от deflate-декодирования. Есть ли способ дефлировать строку в G-Appscript, возможно, с помощью UrlFetchApp?
Служба HTML скриптов приложений может использовать jQuery, а jQuery может раздувать и выкачивать текст. Но это может не помочь вам, в зависимости от того, как вы используете Apps Script. Используете ли вы Apps Script в электронной таблице, документе или что-то еще? Я не уверен, как вы или ваши пользователи взаимодействуют с вашим кодом.
Я нашел этот jsFiddle при надувании и спуске с помощью jQuery:
Ссылка на jsFiddle Inflate / Deflate
function decode(str) {
return decodeURIComponent(escape(RawDeflate.inflate($.base64.decode(str))));
}
$('#encode').click(function() {
var str = $('#myinput').val(),
encoded = encode(str),
decoded = decode(encoded);
//alert($.base64.decode(encoded)); //uncomment to see raw deflated value;
$('#myinput_length').text('' + str.length);
$('#output').val(encoded);
$('#myoutput_length').text('' + encoded.length);
$('#reconstructed').val(decoded);
$('#reconstructed_length').text('' + decoded.length);
});
Кроме того, я предполагаю, что вы хотите, чтобы сценарий приложений вышел и получил что-то, что было сдуто каким-то другим источником? Еще один сайт? Первоначально спущенный на каком-то другом языке?
Других решений пока нет …