Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
ini dosyası okuma problemim.
#11
(19-05-2020, Saat: 17:34)onurakman Adlı Kullanıcıdan Alıntı:
(19-05-2020, Saat: 03:46)Abdullah ILGAZ Adlı Kullanıcıdan Alıntı: TIniFile.Create işlemini gerçekleştirdiğiniz Delphi projenizde, kullandığınız işletim sisteminde, dosya veri biçimlerinde, sistem varsayılan encoding formatında ve daha birçok noktada problem oluşabilir. Siz bir kod bloğu atarak sorunuzu açıklamak ve kapsamını belirtmek yerine "bu kodla böyle bir dosyayı okuyamıyorum" demeyi tercih etmişsiniz.

Bu hususta başınıza gelen problemi giderebilmek için soru sordunuz. Yerinizde olsam verilen cevaplara hakettiği gibi değerlendirmek ve belirtilenleri gerçekleştirip (feedback) yanıt vermek olurdu.

Size vermiş olduğum örneği kullanarak test edip probleminizin devam edip etmediğini paylaşmanız yine size ve sizin gibi gelecekte problem yaşayacakların yararına olacaktır.

Hocam merhaba, yazınızdan biraz kızmışsınız gibi hissettim ama emin olun öyle bir niyetim yoktu. 
Bir saygısızlık ettiysem herkesten çok özür dilerim. Sadece yazmış olduğunuz kodlar gibi yazıyorum bende ve aynı hatayı alıyorum demek istedim. 

Şöyle birşey denedim ini dosyasını memo ya yükledim ve dosyanın başına 

 

bu karakterleri koyduğunu gördüm, muhtemelen bunlardan dolayı sıkıntı yaşıyorum. Bu karakterler nasıl buraya gelmiş olabilir yada ben bunları kaldırarak ini dosyasını nasıl okuyabilirim?


Sorularınızı sorarken dikkat etmeniz gereken bazı yazılı olan ve olmayan kurallar var. Yazılı olanlar için platform yönetimininin duyurduğu makale ve kural listelerine göz atabilirsiniz. Yazılı olmayanların en başında da sizi ciddiye alıp, vaktini sizler için ayıran diğer insanlara karşı sergilemeniz gereken tavırdır. Eğer burası herkese açık ve öğretme odaklı bir platform olmasaydı bir önceki cevabı ve şuan yazmakta olduğum cevabı vermek yerine; içimden "zaten çok iyi biliyorsunuz, o halde siz devam edin." diyerek sekmeyi kapatırdım. 

Acizane tavsiyelerime gelirsek;

1. yaşadığınız problemin spesifik olup olmadığını belirlemeniz/emin olmanız gerekiyor. (Örn: birden fazla ini dosyasına, birden fazla pas dosyası içerisinden bu işlemi gerçekleştirdiğinizi belirtmelisiniz.)
2. işletim sistemi bilgilerinizin detaylarını incelemelisiniz. (unicode destekli ve destekli olmayan karakter dizimine sahip diller kullanılıyorsa bu tarz karakterlerle ilgili problemler yaşanır.)
3. delphi dışında bu tarz bir ini dosyasını manuel oluşturduğunuz zaman otomatik bu karakterin oluşup oluşmadığından emin olmanız gerekiyor.
4. size yanıt veren herkesi tam algı seviyesinde dinleyip, alabileceğiniz en ufak ayrıntıya kadar üstüne gitmeniz ve akabinde öğrenmiş olmanız gerekiyor. bu bazen sorunun doğru cevabı olmak yerine size doğru yola gitmeyi öğreten ve sorduğunuz sorudan daha önemli bir ders olabilir.
5. bu sorunla ilgili daha önce aynı konfigürasyonlarda sorun yaşayıp yaşamadığınızı, farklı bir bilgisayarda aynı kodlarla sorun yaşayıp yaşamadığınızı da test etme ihtimaliniz varsa ve bilgilendirme yaparsanız buradaki kişiler sizi daha doğru yönlendirebilirler. (bunu doktora gidip probleminizi belirttiğiniz gibi düşünün. triaj işleminde size sunulanlarla hüküm verirsiniz, eğer size eksik bilgi gelirse çok alakasız bir tedavi duyabilirsiniz.)
Cevapla
#12
procedure ReadFromFile();
var
  iniFile: TMemIniFile;
begin
  iniFile := TMemIniFile.Create(ExtractFilePath(Application.ExeName) + '\IniFileName.ini', TEncoding.UTF8);
  try
    FReadValue := iniFile.ReadString('SectionName', 'Identification', 'Default Value');
    ...
  finally
    iniFile.Free;
  end;
end;

procedure SaveToFile();
var
  iniFile: TMemIniFile;
begin
  iniFile := TMemIniFile.Create(ExtractFilePath(Application.ExeName) + '\IniFileName.ini', TEncoding.UTF8);
  try
    iniFile.WriteString('SectionName', 'Identification', FWriteValue);
    ...
    iniFile.UpdateFile; //you must use for save the file
  finally
    iniFile.Free;
  end;
end;
PostgreSQL - Linux - Delphi, Poliüretan
WWW
Cevapla
#13
Şu şekilde bir çözüm buldum. Formuma bir memo ekledim, önce ini dosyamı memonun içerisine yüklüyorum orda ilgili değişiklikleri yapıp kaydediyorum.

procedure TFrmAna.DosyaYaz(veri: string);
var
i : integer;
begin
 Memo1.Lines.Clear;
 Memo1.Lines.LoadFromFile(ini_yol);
 for i :=0  to memo1.Lines.Count-1  do begin
   if Copy(memo1.Lines.Strings[i],1,12)='SAYAC=' then begin
      memo1.Lines.Strings[i]:='SAYAC='+veri;
   end;
 end;
 memo1.Lines.SaveToFile(ini_yol);
end;

Bu kodu günde iki kere çalıştırıcam yani saat 22:00 olduğunda bir kez ve sabah 09:00' dan sonra bir kez olarak.
22:00 ile 08:59 arasında sayaç değeri 1,
09:00 ile 21:59 arasında sayaç değeri 2 olacak
bu zamanlama döngüsünü nasıl ayarlayabilirim?
Cevapla
#14
@onurakman; tamamen farklı bir konuda soru sormuşsunuz, Yeni başık açıp sorarsanız daha iyi olur.
There's no place like 127.0.0.1
WWW
Cevapla
#15
(19-05-2020, Saat: 23:13)SimaWB Adlı Kullanıcıdan Alıntı: @onurakman; tamamen farklı bir konuda soru sormuşsunuz, Yeni başık açıp sorarsanız daha iyi olur.

Tamamdır hocam, teşekkür ederim.
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  PDF-WORD-EXCEL Binary olarak kaydetme ve geri okuma hk MugenPower 4 211 28-06-2020, Saat: 21:29
Son Yorum: mrmarman
  Smart Kart Okuma İçin Örnek Kod ferhatcelik 0 248 15-04-2020, Saat: 19:13
Son Yorum: ferhatcelik
  fastReport sayfa sayısını okuma akuyumcu63 3 554 11-04-2020, Saat: 15:04
Son Yorum: hi_selamlar
  Exe dosyası web yayınlamak ismailt35 17 4.486 09-03-2020, Saat: 08:50
Son Yorum: vkamadan
  ÇÖZÜLDÜ-dikdörtgen alanın resim pixel renk değerlerini okuma sadikacar60 2 732 29-10-2019, Saat: 14:48
Son Yorum: sadikacar60



Konuyu Okuyanlar: 1 Ziyaretçi