আমরা কি জাভাতে কোনও বাইট অ্যারে ইনপুট স্ট্রিমে রূপান্তর করতে পারি?


129

আমরা কি জাভাতে কোনও বাইট অ্যারে ইনপুট স্ট্রিমে রূপান্তর করতে পারি? আমি ইন্টারনেটে খুঁজছি কিন্তু এটি পাইনি।

আমার কাছে একটি পদ্ধতি রয়েছে যার যুক্তি হিসাবে একটি ইনপুট স্ট্রিম রয়েছে।

cphআমার কাছে থাকা ইনপুটস্ট্রিমটি বেস 64 এনকোডযুক্ত তাই এটি ব্যবহার করে আমাকে ডিকোড করতে হয়েছিল

BASE64Decoder decoder = new BASE64Decoder();
byte[] decodedBytes = decoder.decodeBuffer(cph);

এখন আমি কীভাবে decodedBytesআবার রূপান্তর করব InputStream?


1
এপিআই ডক পৃষ্ঠাগুলির শীর্ষে থাকা "ব্যবহার" লিঙ্কটি এই ধরণের সমস্যার জন্য খুব কার্যকর is
টম হাটিন -

উত্তর:



4

আপনি যদি রবার্ট হার্ডারের বেস 64 ইউটিলিটিটি ব্যবহার করেন তবে আপনি এটি করতে পারেন:

InputStream is = new Base64.InputStream(cph);

বা সূর্যের জেআরই দিয়ে আপনি এটি করতে পারেন:

InputStream is = new
com.sun.xml.internal.messaging.saaj.packaging.mime.util.BASE64DecoderStream(cph)

তবে সেই শ্রেণীর উপর জেআরইর অংশ হতে অবিরত থাকুন না, বা এটি আজকে যা বলে মনে হচ্ছে তা করা অবিরত করুন don't রোদ এটি ব্যবহার না করতে বলে।

সেখানে যেমন করুন Base64- পাঠোদ্ধারতা সম্পর্কে অন্যান্য স্ট্যাক ওভারফ্লো প্রশ্ন, হয় এই এক।


10
এটি বেসরকারী রৌদ্র বর্গ ব্যবহার করবেন না এবং এটি যে কোনও সময় পরিবর্তিত হতে পারে ব্যবহার করা উচিত নয়।
এমপি।

আমি আমার উত্তরটি সম্পাদনা করব ভয়াবহ সতর্কতা অন্তর্ভুক্ত করতে। প্রশ্নের কোডটি ইতিমধ্যে ব্যবহার করছে BASE64Decoderযা সম্ভবতঃsun.misc.BASE64Decoder
স্টিফেন ডেন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.