Буфер обмена -> файл

  1. namespace ClipboardToFile {
  2.  
  3.     class Program {
  4.  
  5.         [STAThread]
  6.         static void Main(string[] args) {
  7.             string fileName = DateTime.Now.ToString("yyyy-dd-MM_HH-mm-ss");
  8.             string path = Path.Combine(Path.GetTempPath(), fileName).ToString();
  9.             if (Clipboard.ContainsData(DataFormats.Bitmap)) {
  10.                 path += ".jpg";
  11.                 var bmp = (Bitmap) Clipboard.GetData(DataFormats.Bitmap);
  12.                 bmp.Save(path, ImageFormat.Jpeg);
  13.             } else if (Clipboard.ContainsData(DataFormats.Text)) {
  14.                 path += ".txt";
  15.                 writeFile(path, (String) (Clipboard.GetData(DataFormats.Text)));
  16.             } else return;
  17.  
  18.             var files = new StringCollection { path };
  19.             Clipboard.SetFileDropList(files);
  20.         }
  21.  
  22.         private static void writeFile(string path, string text) {
  23.             var fileStream = new FileStream(path, FileMode.OpenOrCreate);
  24.             var writer = new StreamWriter(fileStream, Encoding.UTF8);
  25.             writer.Write(text);
  26.             writer.Flush();
  27.             writer.Close();
  28.         }
  29.     }
  30. }
Простейшая программка, при запуске сохраняет содержимое буфера обмена в файл и заносит ссылку на этот файл в буфер, так, что можно вставить уже файл.
Очень удобно, если надо по-быстрому сделать скриншот.

Реклама

Мы в соцсетях

tw tg yt gt