Дата и время в названии картинки - C#

Узнай цену своей работы

Формулировка задачи:

Всем добрый вечер, день, утро, ночь! Я столкнулся с проблемой: Есть программа, которая делает снимок экрана и сохраняет его в определенную папку, но если несколько раз сохранять - старый скриншот заменяется новым, помогите сделать так, чтобы в названии скриншота была дата и время, или так чтобы к названию картинки приплюсовалась цифра (1,2,3 и т.д.) Вот код:
this.Opacity = 0;
            Size ScreenSize = Screen.PrimaryScreen.Bounds.Size;
            Bitmap image = new Bitmap(ScreenSize.Width, ScreenSize.Height);
            using (Graphics g = Graphics.FromImage(image))
            {
                g.CopyFromScreen(Point.Empty, Point.Empty, ScreenSize);
 
                image.Save("C:\\screenshots1\\1.png", System.Drawing.Imaging.ImageFormat.Png);
                                      this.Opacity = 100;
И еще, если не трудно, объясните как программно создать папку на рабочем столе, в которую будут сохраняться скриншоты.
Все! Я нашел как это все дело сделать. Вот код:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;

namespace WindowsFormsApplication9
{
    public partial class Form1 : Form
    {
        string dir = string.Empty;
        String save = DateTime.Now.ToString("yyyy.MM.dd_HH-mm-ss");
        String format = ".png";
 
        public Form1()
        {
            InitializeComponent();
        }
 
        private void button1_Click(object sender, EventArgs e)
        {
            this.Opacity = 0;
            Size ScreenSize = Screen.PrimaryScreen.Bounds.Size;
            Bitmap image = new Bitmap(ScreenSize.Width, ScreenSize.Height);
            using (Graphics g = Graphics.FromImage(image))
            {
                g.CopyFromScreen(Point.Empty, Point.Empty, ScreenSize);
                
        string desktop = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
     
                image.Save(desktop+"\\Скриншоты\\" + save + format, System.Drawing.Imaging.ImageFormat.Jpeg);
               
                                      this.Opacity = 100;
                MessageBox.Show("Спасибо за использование программы\n Скриншот создан на рабочем столе\n в папке скриншоты"); 

            }
        }
 
        private void Form1_Load(object sender, EventArgs e)
        {
 
            Directory.CreateDirectory(Path.GetDirectoryName(Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "\\Скриншоты\\"));
            dir = Path.GetDirectoryName(Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "\\Скриншоты\\");
 
            string desktop = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
        }
    }
}
У меня возник такой вопрос: Как открыть созданную папку на рабочем столе ?

Решение задачи: «Дата и время в названии картинки»

textual
Листинг программы
                DirectoryInfo di = Directory.CreateDirectory(Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "\\MyFolder\\");
                string fname =  di.FullName + DateTime.Now.ToString("yyyy-MM-dd-hh-mm-ss") + ".png";
                image.Save(fname, System.Drawing.Imaging.ImageFormat.Png);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.75 из 5
Похожие ответы