Bilgisayar-Bilişim Teknolojileri
Ana Sayfa
Bilişim Teknolojileri Forumu Son Konuları
24 Saat
Bilişim Teknolojileri - Formatör - Bilgisayar Öğretmeni Kayıt
Kayıt Olun
iletişim
iletişim
Detaylı Arama
Arama

C# ile bir foto nun çekilme tarihini nasıl öğrenebiliriz?

Konu, 'Programlama Dilleri' kısmında spider23 tarafından paylaşıldı.


Sayfayı Paylaş /bbnetsosyal

  1. spider23

    spider23 Süper Üye Süper Üye

    Kayıt:
    16 Nisan 2010
    Mesajlar:
    1.632
    Beğeni:
    66
    Selamlar bir proje geliştiriyorum;biitnce paylaşıcağım..
    yalnız şöyle bir sıkıntı var,fotoğraf dosyalarının oluşturma tarihi-yazılma tarihi vs..ye erişebiliyorum ancak fotoğrafın çekildiği tarihe erişemiyorum...
    ve bazı fotolarda bu tarihler farklı..
    C# ta bunun için bir sınıf var mı??
     
  2. Parhelion

    Parhelion Seçkin Üye Seçkin Üye

    Kayıt:
    22 Mart 2008
    Mesajlar:
    980
    Beğeni:
    54
    using System.Text;
    using System.Drawing;
    using System.Globalization;

    public DateTime CekilmeTarihiniGetir(string dosyaYolu)
    {
    Bitmap image = new Bitmap(dosyaYolu);
    PropertyItem test = image.GetPropertyItem(0x132);
    ASCIIEncoding a = new ASCIIEncoding();
    string tarih = a.GetString(test.Value, 0, test.Len - 1);
    CultureInfo provider = CultureInfo.InvariantCulture;
    return DateTime.ParseExact(tarih, "yyyy:MM:d H:m:s", provider);
    }

    // test
    DateTime tarih = CekilmeTarihiniGetir("C:\\resim.jpg");
    // dosya yolunu openfiledialogdan da cekebilirsiniz
    MessageBox.Show(tarih.ToString("dd.MM.yyyy HH:mm:ss");

    http://stackoverflow.com/questions/1689 ... ge-c-sharp sayfasindaki ornegi modifiye ettim fakat denemedim bilginize
     
  3. spider23

    spider23 Süper Üye Süper Üye

    Kayıt:
    16 Nisan 2010
    Mesajlar:
    1.632
    Beğeni:
    66
    yok hocam işe yaramadı...bu da bilgisayara kaydedildiği tarihi buluyor..
     
  4. spider23

    spider23 Süper Üye Süper Üye

    Kayıt:
    16 Nisan 2010
    Mesajlar:
    1.632
    Beğeni:
    66
    [​IMG]


    fotoya bakarsanız 13.07.2014 tarihine erişmem lazım ancak diğer tarihlere erişebiliyorum..
     
  5. Parhelion

    Parhelion Seçkin Üye Seçkin Üye

    Kayıt:
    22 Mart 2008
    Mesajlar:
    980
    Beğeni:
    54
  6. spider23

    spider23 Süper Üye Süper Üye

    Kayıt:
    16 Nisan 2010
    Mesajlar:
    1.632
    Beğeni:
    66
    hocam ilginize teşekkürler..gönderdiğiniz linkte kini kıvıramadım altta ki gibi bir metot bulup çok az bi uyarlama yaptım çalıştı...yine forumda sizler gibi hocalarımız olmasına sevindim..çok teşekkürler..
    public DateTime CekilmeTarihiniGetir(string dosyayolu)
    {
    //Property Item 36867 corresponds to the Date Taken
    Image targetImg = new Bitmap(dosyayolu);
    PropertyItem propItem = targetImg.GetPropertyItem(36867);
    DateTime dtaken;

    //Convert date taken metadata to a DateTime object
    string sdate = Encoding.UTF8.GetString(propItem.Value).Trim();
    string secondhalf = sdate.Substring(sdate.IndexOf(" "), (sdate.Length - sdate.IndexOf(" ")));
    string firsthalf = sdate.Substring(0, 10);
    firsthalf = firsthalf.Replace(":", "-");
    sdate = firsthalf + secondhalf;
    dtaken = DateTime.Parse(sdate);
    return dtaken;
    }
     

Sayfayı Paylaş /bbnetsosyal