Kimov işlevini kullanıyorum - dosyayı açıyoruz - satırı yazıyoruz - dosyayı kapatıyoruz ve sonra bir daire içinde.
//+------------------------------------------------------------------+ //| Запись строки в файл | //+------------------------------------------------------------------+ void WritingLineInFile( string FileName, string text) { int file_handle= FileOpen (FileName, FILE_READ | FILE_WRITE , " " ); if (file_handle> 0 ) { FileSeek (file_handle, 0 , SEEK_END ); FileWrite (file_handle, text); FileClose (file_handle); } }
canlı edit...
Kimov işlevini kullanıyorum - dosyayı açıyoruz - satırı yazıyoruz - dosyayı kapatıyoruz ve sonra bir daire içinde.
Kontrol etmek istemiyorum ama bence FileFlush() https://docs.mql4.com/en/files/FileFlush , FileFlush() durumu düzeltirse dosyayı her seferinde kapatmamaya yardımcı olur, o zaman daha iyi dosyayı init() içinde açmak ve deinit() içinde kapatmak için benzer bir şey yaptı, tekrar eklemek gibi görünüyor FileWrite(file_handle, ""); yeni bir satır yazacak - yani her FileWrite() yeni bir satırdan yazılır - kontrol etmeniz gerekir
Not: FileFlush () kullanarak sürekli kapanmadan yazılan standart dışı çevrimdışı grafiklerim var.
S)+ ";" +Do 1-2 elemandan :) boş bir dizi de yapabilirsiniz :) veya hepsini aynı şekilde ekleyebilirsiniz ... +DoubleToStr(AccountEquity(), 1 )+ "\r \n" ; FileWrite(path, Symbol (), TimeToStr(TimeCurrent(),TIME_DATE),DoubleToStr(AccountBalance(), 1 ),DoubleToStr(AccountEquity(), 1 ),TimeToStr(TimeCurrent(),TIME_SECONDS)+ "\r \n" ); |
Merhaba. Her yeni siparişi yeni bir satıra yazmaya çalışıyorum, bana neyi yanlış yaptığımı söyle? Yalnızca son açılan kayıtlı kalır.
geçersiz OnTick()
- AM2
- www.forexsystems.biz
Merhaba. Her yeni siparişi yeni bir satıra yazmaya çalışıyorum, bana neyi yanlış yaptığımı söyle? Yalnızca son açılan kayıtlı kalır.
Yanlış bayraklar nedeniyle dosyanın üzerine sürekli yazılıyor. Dosyayı sadece yazmak için değil, okumak için de açmanız gerekiyor. O zaman yeniden oluşturulmayacak:
int h= FileOpen ( "Copy.txt" , FILE_WRITE | FILE_READ , ";" );
Yanlış bayraklar nedeniyle dosyanın üzerine sürekli yazılıyor. Dosyayı sadece yazmak için değil, okumak için de açmanız gerekiyor. O zaman yeniden oluşturulmayacak:
Çok teşekkürler. Çok teşekkürler!
İşlevin açıklaması bu bilgiyi içeriyor, nedense onu gözden kaçırdım ve hangi yolu daha fazla kazacağımı bile bilmiyordum ... csv yerine yanlış dosya türünü, txt'yi seçtiğimi düşünmeye başladım, ama her şeyin basit olduğu ortaya çıkıyor. )))
Lütfen bana bir satırı okuduktan sonra nasıl silebileceğimi söyle, bu işlemi yapmanın basit bir yolu var mı?
- www.mql5.com
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Dosyaya yazma konusunda yardım.
İşte fonksiyon:
Excell'deki yeni bir satırdan yazılacak, öğretici ve belgeler de dahil olmak üzere forumdaki tüm kodları karıştıracak yeni verilere ihtiyacım var, ancak sonuç sıfır :(((