Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.IO;
- using System.Drawing;
- namespace ConsoleApplication {
- class Program
- {
- static void Main(string[] args)
- {
- if(args.Length == 0){
- if(File.Exists("pic.jpg")){ File.Delete("pic.jpg");}
- if(File.Exists("picstring.txt")){ File.Delete("picstring.txt");}
- Console.WriteLine("\n I want to:\n");
- Console.WriteLine("\tConvert (J)PG to Base64 string");
- Console.WriteLine("\tConvert (B)ase64 string to JPG");
- ConsoleKeyInfo ki = Console.ReadKey();
- if(ki.Key == ConsoleKey.J){
- Console.WriteLine("\n We'll try to convert JPG to Base64 string...");
- string converted = ImageToBase64(Image.FromFile(".\\temp\\pic.jpg"));
- using(StreamWriter sw = new StreamWriter("picstring.txt")){
- sw.Write(converted);
- }
- }else{
- if(ki.Key == ConsoleKey.B){
- Console.WriteLine("\n We'll try to convert Base64 string to JPG...");
- string data = string.Empty;
- using(StreamReader sr = new StreamReader(".\\temp\\picstring.txt")){
- data = sr.ReadToEnd();
- }
- Bitmap b = Base64ToBitmap(data);
- b.Save("pic.jpg", System.Drawing.Imaging.ImageFormat.Jpeg);
- }else{
- Console.WriteLine("\n You didn't select a valid choice.");
- }
- }
- }
- }
- private static bool EndsWithImageFileFormatExtension(string filepath){
- bool result = false;
- if(filepath.EndsWith(".png")){ result = true; }
- if(filepath.EndsWith(".jpg")){ result = true; }
- if(filepath.EndsWith(".jpeg")){ result = true; }
- if(filepath.EndsWith(".bmp")){ result = true; }
- return result;
- }
- private static string ImageToBase64(Image image)
- {
- try
- {
- var imageStream = new MemoryStream();
- image.Save(imageStream, System.Drawing.Imaging.ImageFormat.Bmp);
- imageStream.Position = 0;
- var imageBytes = imageStream.ToArray();
- var ImageBase64 = Convert.ToBase64String(imageBytes);
- return ImageBase64;
- }
- catch
- {
- return "Error converting image to base64!";
- }
- }
- private static Bitmap Base64ToBitmap(string ImageText)
- {
- Byte[] bitmapData = Convert.FromBase64String(FixBase64ForImage(ImageText));
- System.IO.MemoryStream streamBitmap = new System.IO.MemoryStream(bitmapData);
- Bitmap bitImage = new Bitmap((Bitmap)Image.FromStream(streamBitmap));
- return bitImage;
- }
- private static string FixBase64ForImage(string Image) {
- System.Text.StringBuilder sbText = new System.Text.StringBuilder(Image,Image.Length);
- sbText.Replace("\r\n", String.Empty); sbText.Replace(" ", String.Empty);
- return sbText.ToString();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement