هل يمكننا تحويل صفيف بايت إلى inputstream في Java؟
-
05-07-2019 - |
سؤال
هل يمكننا تحويل صفيف بايت إلى inputstream في Java؟ لقد كنت أبحث على الإنترنت لكنني لم أجدها.
لدي طريقة لها إدخال Stream كوسيطة.
المدخلات cph
لقد تم ترميز BASE64 لذا اضطررت إلى فك تشفيره باستخدام
BASE64Decoder decoder = new BASE64Decoder();
byte[] decodedBytes = decoder.decodeBuffer(cph);
الآن كيف يمكنني تحويل decodedBytes
مرة أخرى ل InputStream
?
المحلول
يستخدم ByteArrayInputStream
:
InputStream is = new ByteArrayInputStream(decodedBytes);
نصائح أخرى
كما ترى فائدة Robert Harder's Base64, ، ثم يمكنك أن تفعل:
InputStream is = new Base64.InputStream(cph);
أو مع Sun's Jre ، يمكنك القيام به:
InputStream is = new
com.sun.xml.internal.messaging.saaj.packaging.mime.util.BASE64DecoderStream(cph)
ومع ذلك ، لا تعتمد على استمرار هذا الفصل في أن تكون جزءًا من JRE ، أو حتى الاستمرار في فعل ما يبدو أنه يفعله اليوم. تقول صن لا لاستخدامه.
هناك أسئلة أخرى في التدفق المكدس حول فك تشفير BASE64 ، مثل هذا.
لا تنتمي إلى StackOverflow