সি # একটি বেস 64 রূপান্তর করুন -> বাইট []


93

আমার কাছে একটি Base64 byte[]অ্যারে রয়েছে যা একটি স্ট্রিম থেকে স্থানান্তরিত হয়েছে যা আমি এটিকে byte[]কীভাবে করব এটি একটি সাধারণ রূপান্তরিত করতে হবে?


"বেস 64 byte[]" কী? এটি কোন এনকোডিংয়ের মধ্যে রয়েছে?
স্ল্যাक्स

4
আপনি এখানে কোড রাখতে পারেন?
ফ্রেইডুন বারিকজেহী

হ্যাঁ, আমি মনে করি না আপনার একটি বেস 64 আছে byte[]। যদি এটি বেস 64 ফর্ম্যাটে থাকে তবে এটি একটি স্ট্রিং।
vapcguy

উত্তর:


167

আপনি ব্যবহার করতে হবে Convert.FromBase64String একটি মোড় করুন Base64- এনকোডেড stringএকটি মধ্যে byte[]


4
আমার দরকার byte[] - > byte[] | এই পদ্ধতিটি হলbyte[] -> string
সুদান্থ

4
বেস 64 সর্বদা আসকি পাঠ্য হয়। সুতরাং শুধু Encoding.ASCII.GetString(base64arr)প্রথম না।
নাইয়ারগডস

4
একটি রূপান্তর রয়েছে romফ্রেমবেস 64৪CharArray এখন।
লি


7

চেষ্টা করুন

byte[] incomingByteArray = receive...; // This is your Base64-encoded bute[]

byte[] decodedByteArray =Convert.FromBase64String (Encoding.ASCII.GetString (incomingByteArray)); 
// This work because all Base64-encoding is done with pure ASCII characters

3

আপনি FromBase64Transformক্লাসটি সন্ধান করছেন, ক্লাসের সাথে ব্যবহৃত CryptoStream

আপনার যদি স্ট্রিং থাকে তবে আপনি কল করতেও পারেন Convert.FromBase64String


3

আমি এই উদ্দেশ্যে একটি এক্সটেনশন পদ্ধতি লিখেছি:

public static byte[] FromBase64Bytes(this byte[] base64Bytes)
{
    string base64String = Encoding.UTF8.GetString(base64Bytes, 0, base64Bytes.Length);
    return Convert.FromBase64String(base64String);
}

এটিকে কল করুন:

byte[] base64Bytes = .......
byte[] regularBytes = base64Bytes.FromBase64Bytes();

আমি আশা করি এটি কাউকে সাহায্য করবে

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