2012-03-28 2 views
0

я буду передать строку как "1ijga8ZMQsjlN//74b+D9g==" к способу дешифрования, чем выполняется, но когда я буду хранить эту строку в переменную струнную и чем передать переменный в методу, чем ниже столкновений ошибок:Как решить Неверную длину для массива символов Base-64?

Invalid длиной для Base-64 char.

Проблемные Код:

String hdDec = Dispatch.call(c10, "Decrypt",hd, passPhrase, saltValue, hashAlgorithm, passwordIterations, initVector, keySize).toString(); 
+2

Пожалуйста, подтвердите свой код. –

+0

String hdDec = Dispatch.call (c10, «Расшифровать», «1ij8ZMQsjlN // 74b + D9g ==», passPhrase, saltValue, hashAlgorithm, passwordIterations, initVector, keySize) .toString(); – tapanmodh

+0

, когда я использую переменную типа String hd = "1ijga8ZMQsjlN // 74b + D9g ==", а затем передаю эту строчную переменную hd методу String hdDec = Dispatch.call (c10, "Decrypt", hd, passPhrase, saltValue, hashAlgorithm, passwordIterations, initVector, keySize) .toString(); – tapanmodh

ответ

0

Чтобы решить проблему, нужно сначала Encode, а затем Decode все готово закодировать-base64 строка, в зависимости от того, где вы его используете.

Пожалуйста, обратитесь к следующему link

0

Код, вы разделяете не дает достаточно информации, чтобы решить эту проблему, потому что вы только общий код, который вызовы метод, который делает всю работу. Однако, поскольку сообщение об ошибке

Недопустимая длина для массива символов Base-64.

проблема может быть, что вы посылаете string и метод ожидает char[], так что вы могли бы попробовать "1ijga8ZMQsjlN//74b+D9g==".ToCharArray() вместо этого. В противном случае все, что мы можем сделать, это догадываться.

+0

No.method принимает только строки, и у меня есть те же 2 метода, но они успешно запускают только проблему с этой строкой, я не понимаю, почему? Фактически я получаю эти строка из адресной строки и хранится в переменной String, а затем я передаю эту переменную String в webservice.and вызов веб-службы выше кода. – tapanmodh

+0

, когда веб-служба доступа к этим переменным, чем эта переменная, я хочу передать в методе, но выше произошла ошибка. – tapanmodh

+0

Мы также не знаем почему, но поскольку строка является допустимой строкой base64, проблема заключается либо в одном из других параметров (passPhrase, saltValue и т. Д.), Либо в коде - вы не предоставили эти (дон- t копировать/вставлять пароли с живых сайтов!). –

Смежные вопросы