Neler yeni

Foruma hoş geldin 👋, Ziyaretçi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

C# .ini Dosyası Okuma Sınıfı

x0r

x0r

Administrator
Yönetici
CEO
Moderatör
x0R Üyesi
Katılım
29 Mayıs 2024
Mesajlar
815
Tepkime puanı
1.822
Puan
93
C#:
  internal class Program
  {
      static void Main(string[] args)
      {
          IniFile iniFile = new IniFile("ayarlar.ini");
          string ayarlar = "ayarlar";
          string baslik = iniFile.Read("baslik", ayarlar);
          string dosya = iniFile.Read("dosya", ayarlar);
          string hedef = iniFile.Read("hedef", ayarlar);

          Console.Title = baslik;
          Console.ForegroundColor = ConsoleColor.Green; // Yeşil renk

      Console.WriteLine("██╗  ██╗ ██████╗ ██████╗ ████████╗ ██████╗");
      Console.WriteLine("╚██╗██╔╝██╔═████╗██╔══██╗╚══██╔══╝██╔════╝");
      Console.WriteLine(" ╚███╔╝ ██║██╔██║██████╔╝   ██║   ██║");
      Console.WriteLine(" ██╔██╗ ████╔╝██║██╔══██╗   ██║   ██║");  
      Console.WriteLine("██╔╝ ██╗╚██████╔╝██║  ██║██╗██║   ╚██████╗");
      Console.WriteLine("╚═╝  ╚═╝ ╚═════╝ ╚═╝  ╚═╝╚═╝╚═╝    ╚═════╝");
          Console.ResetColor();
          Console.WriteLine();
          Console.WriteLine(baslik + "Yükleniyor");


          // Uygulamanın çalıştığı dizini al
          string currentDirectory = AppDomain.CurrentDomain.BaseDirectory;

          // Kopyalanacak dosyanın adı
          string fileName = dosya;

          // Kopyalanacak dosyanın tam yolu
          string sourceFilePath = Path.Combine(currentDirectory, fileName);

          // Kullanıcının Belgelerim klasörünü al
          string documentsPath = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);

          // Hedef klasörün yolu
          string targetFolder = Path.Combine(documentsPath, hedef);

          // Klasör yoksa oluştur
          if (!Directory.Exists(targetFolder))
          {
              Directory.CreateDirectory(targetFolder);
          }

          // Hedef dosyanın tam yolu
          string destinationFilePath = Path.Combine(targetFolder, fileName);

          // Dosyayı kopyala
          try
          {
              File.Copy(sourceFilePath, destinationFilePath, true);
              Console.WriteLine($"Dosya başarıyla kopyalandı: {destinationFilePath}");
          }
          catch (Exception ex)
          {
              Console.WriteLine($"Dosya kopyalanırken bir hata oluştu: {ex.Message}");
          }
      }
  }


IniFile.cs Dosyası içeriği

C#:
 internal class IniFile
 {
     string Path;
     string EXE = Assembly.GetExecutingAssembly().GetName().Name;

     [DllImport("kernel32", CharSet = CharSet.Unicode)]
     static extern long WritePrivateProfileString(string Section, string Key, string Value, string FilePath);

     [DllImport("kernel32", CharSet = CharSet.Unicode)]
     static extern int GetPrivateProfileString(string Section, string Key, string Default, StringBuilder RetVal, int Size, string FilePath);

     public IniFile(string IniPath = null)
     {
         Path = new FileInfo(IniPath ?? EXE + ".ini").FullName;
     }

     public string Read(string Key, string Section = null)
     {
         var RetVal = new StringBuilder(255);
         GetPrivateProfileString(Section ?? EXE, Key, "", RetVal, 255, Path);
         return RetVal.ToString();
     }

     public void Write(string Key, string Value, string Section = null)
     {
         WritePrivateProfileString(Section ?? EXE, Key, Value, Path);
     }

     public void DeleteKey(string Key, string Section = null)
     {
         Write(Key, null, Section ?? EXE);
     }

     public void DeleteSection(string Section = null)
     {
         Write(null, null, Section ?? EXE);
     }

     public bool KeyExists(string Key, string Section = null)
     {
         return Read(Key, Section).Length > 0;
     }
 }
 

Tema özelleştirme sistemi

Bu menüden forum temasının bazı alanlarını kendinize özel olarak düzenleye bilirsiniz

Zevkini yansıtan rengi seç

Geniş / Dar görünüm

Temanızı geniş yada dar olarak kullanmak için kullanabileceğiniz bir yapıyı kontrolünü sağlayabilirsiniz.

Izgara görünümlü forum listesi

Forum listesindeki düzeni ızgara yada sıradan listeleme tarzındaki yapının kontrolünü sağlayabilirsiniz.

Resimli ızgara modu

Izgara forum listesinde resimleri açıp/kapatabileceğiniz yapının kontrolünü sağlayabilirsiniz.

Kenar çubuğunu kapat

Kenar çubuğunu kapatarak forumdaki kalabalık görünümde kurtulabilirsiniz.

Sabit kenar çubuğu

Kenar çubuğunu sabitleyerek daha kullanışlı ve erişiminizi kolaylaştırabilirsiniz.

Köşe kıvrımlarını kapat

Blokların köşelerinde bulunan kıvrımları kapatıp/açarak zevkinize göre kullanabilirsiniz.

Geri