Çözüldü C# dosya isimleri yazdırma

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

Sofi96

Kilopat
Katılım
1 Ocak 2016
Mesajlar
260
Çözümler
2
Daha fazla  
Cinsiyet
Erkek
Meslek
Yazılım Mühendisi
Merhaba arkadaşlar,

Konuya dair bilgisi olanların desteğini rica ederim.

C# üzerinde buton ile kullanıcıya dosya seçtiriyorum. Bu seçtirdiğim dosyanın yolunu textbox içerisine yazdırabiliyorum.

Basit örnek : Dosya seç butonuna tıklıyor, masaüstünden dosyasını seçiyor ve bunun yol uzantısını C:\Users\ddddd\Desktop\fileavi.mp4 şeklinde textbox içerisine yazdırıyorum.

Ancak ihtiyacım olan seçilen bu dosyanın KB,MB cinsinden boyutunu ve dosya adını textboxlara yazdırmak.
Yani örneğin : Dosya adı : Fileavi.MP4 dosya boyutu 400KB. Dosya uzantısı : Docx. Gibi burada sorun yaşıyorum.

Konu hakkında bilgisi olan var mıdır?
 
Çözüm
Bu kod, tam istediğiniz işlemi yapıyor. Yan yana yazdırıyor.

C#:
            string a = @"dosya yolu";
            string file_size_x64;

            FileInfo file_info = new FileInfo(a);
            double file_size = file_info.Length / 1024;
            if ((Convert.ToInt32(file_size) / 1024) > 1024)
            {
                file_size_x64 = string.Format("{0:0.00} GB", file_size / 1024 / 1024);
            }
            else
            {
                if (Convert.ToInt32(file_size) > 1024)
                {
                    file_size_x64 = string.Format("{0:0.00} MB", file_size / 1024);
                }
                else
                {
                    file_size_x64 = string.Format("{0:0.00} KB", file_size);
                }
            }

            string label = a.FileName().Trim() + " | " + Path.GetExtension(a) + " | " + file_size_x64;
Merhaba, kodları özel bloklar olduğu için ne yazık ki buraya yükleyemiyorum kusura bakmayın. Basit temelde kendi ekranınızda çalışır halini paylaşabilme fırsatınız var mıdır?
textbox'un içerisine bu şekilde yazdırıyorum. if bloğuda var elbette.
openDialog.InitialDirectory = @"C:\Users\ddddd\Desktop";
DsysecBtn24.Text = openDialog.FileName.ToString();
 
FileInfo kullanabilirsin. Örnek kod:
C#:
private void dosyaSecButton_Click(object sender, EventArgs e)
{
    // Dosya seçme diyaloğunu aç
    OpenFileDialog openFileDialog1 = new OpenFileDialog();

    if (openFileDialog1.ShowDialog() == DialogResult.OK)
    {
        // Dosya yolu ve dosya adını al
        string dosyaYolu = openFileDialog1.FileName;
        string dosyaAdi = Path.GetFileName(dosyaYolu);

        // Dosya boyutunu al ve KB/MB cinsinden yazdır
        long dosyaBoyutuByte = new FileInfo(dosyaYolu).Length;
        string dosyaBoyutuKB = ((double)dosyaBoyutuByte / 1024).ToString("0.00") + " KB";
        string dosyaBoyutuMB = ((double)dosyaBoyutuByte / (1024 * 1024)).ToString("0.00") + " MB";

        // Sonuçları textbox'lara yazdır
        dosyaYoluTextBox.Text = dosyaYolu;
        dosyaAdiTextBox.Text = dosyaAdi;
        dosyaBoyutuKBTextBox.Text = dosyaBoyutuKB;
        dosyaBoyutuMBTextBox.Text = dosyaBoyutuMB;
    }
}
Burada FileInfo Length özelliği, dosya boyutunu byte cinsinden verir. Bu değeri KB/MB cinsine çevirmek için dosya boyutunu 1024'e bölüyoruz. Dosya boyutu ToString("0.00") ile string'e çevrildiğinde ondalık kısmı iki basamaklı olarak yazdırmak için kullanıyoruz. Ayrıca kendine göre de düzenleyebilirsin.
 
Bu kod, tam istediğiniz işlemi yapıyor. Yan yana yazdırıyor.

C#:
            string a = @"dosya yolu";
            string file_size_x64;

            FileInfo file_info = new FileInfo(a);
            double file_size = file_info.Length / 1024;
            if ((Convert.ToInt32(file_size) / 1024) > 1024)
            {
                file_size_x64 = string.Format("{0:0.00} GB", file_size / 1024 / 1024);
            }
            else
            {
                if (Convert.ToInt32(file_size) > 1024)
                {
                    file_size_x64 = string.Format("{0:0.00} MB", file_size / 1024);
                }
                else
                {
                    file_size_x64 = string.Format("{0:0.00} KB", file_size);
                }
            }

            string label = a.FileName().Trim() + " | " + Path.GetExtension(a) + " | " + file_size_x64;
 
Çözüm

Geri
Yukarı