PublicImage Base64toimage (stringbase64string) { //Convert Base64 String to byte[] byte[] Imagebytes =convert.frombase64string (base64string); MemoryStream Ms=NewMemoryStream (Imagebytes,0, imagebytes.length); //Convert byte[] to ImageMs. Write (Imagebytes,0, imagebytes.length); Image Image= Image.fromstream (MS,true); returnimage; } Public stringCreateImgToBase64 (stringImagePath) {Bitmap BMP=(Bitmap) image.fromfile (ImagePath); MemoryStream Stream=NewMemoryStream (); Bmp. Save (stream, SYSTEM.DRAWING.IMAGING.IMAGEFORMAT.BMP); Stream. Position=0; byte[] data =New byte[Stream. Length]; Stream. Read (data,0, (int) stream. Length); Stream. Close (); stringBase64string =string. Empty; Try{base64string= System.Convert.ToBase64String (data,0, data. Length); } Catch { Throw; } StreamWriter OutFile; Try{outFile=NewStreamWriter (string. Concat (ImagePath,". txt"),false, ENCODING.ASCII); Outfile.write (base64string); Outfile.close (); returnbase64string; } Catch { Throw; } BMP. Dispose (); } Public voidCreatebase64strtoimage (stringFilePath) {StreamReader Reader=NewStreamReader (FilePath); stringstr =Reader. ReadToEnd (); byte[] BitmapData =New byte[Str. Length]; BitmapData=convert.frombase64string (Fixbase64forimage (str)); MemoryStream Streambitmap=NewMemoryStream (BitmapData); Bitmap Bitimage=NewBitmap ((Bitmap) Image.fromstream (Streambitmap)); Bitimage.save (Filepath.substring (0, Filepath.length-4), System.Drawing.Imaging.ImageFormat.Jpeg); Bitimage.dispose (); } Static stringFixbase64forimage (stringimage) {StringBuilder Sbtext=NewStringBuilder (image, image. Length); Sbtext.replace ("\ r \ n",string. Empty); Sbtext.replace (" ",string. Empty); returnsbtext.tostring (); }
The mutual conversion between image and Base64string