Uzun zamandır dosya işlemleriyle çalışmıyorum.Bak, FileOpen() kullanırken bir CSV dosyası bildirdiniz. Daha önce, tüm yazılı öğelerin unicode veya ansi dizelerine dönüştürüldüğü belirtilmişti. Belki burada bir köpek vardır?
Lanet olası Winnie the Pooh!!!
Orada "ortalığı karıştırdı" :) FILE_ANSI parametresini ekledi ve her şey saat gibi gitti!
Hata ayıklayıcıda gördüğüme göre (sTF değişkeninde bazı Çin hiyeroglifleri var), dosyanın içeriğini Unicode olarak okudu! Dosyayı açarken tüm geçerli kod sayfalarını denedim fakat sonuç aynı :( Dosyanın kendisi Windows kodlaması ile yazılmıştır.
Köpeğin nerede dolaştığı hakkında bir fikri olan var mı?
Varsayılan, UNICODE ile yazılmıştır. Öyleyse FILE_ANSI bayrağını ayarlayın:
uintFileReadArray (
int file_handle, // handle файлаvoid array[], // массив для записиint start_item= 0 , // с какой позиции массива писатьint items_count= WHOLE_ARRAY// сколько читать
);
[] dizisinin boyutu hakkında soru. FileReadArray() işlevinde kullanmadan önce dizi[] dizisinin boyutunu bir şekilde ayarlamam gerekir mi , yoksa bu durumda "terminal yürütme sistemi" boyutuyla ilgilenir mi?
Yedelkin : [] dizisinin boyutu hakkında soru. FileReadArray() işlevinde kullanmadan önce dizi[] dizisinin boyutunu bir şekilde ayarlamam gerekir mi, yoksa bu durumda "terminal yürütme sistemi" boyutuyla ilgilenir mi?
Hayır, işlevin kendisi dosyadaki gerekli miktarda veri için bellek ayıracaktır, dinamik bir diziyi geçmek yeterlidir.
Bu arada, orada yazılmışlarsa, basit yapıların dizilerini de okuyabilirsiniz.
PS FileReadArray() işlevi kaydedilen verilerin türünü tanımıyor, bu nedenle dikkatli olun, bu özelliklerden biridir, kopyaları kaydedebilir ve onları olong olarak okuyabilir ve bitlere ayrıştırabilirsiniz.
PS FileReadArray() işlevi kaydedilen verilerin türünü tanımıyor, bu nedenle dikkatli olun, bu özelliklerden biridir, kopyaları kaydedebilir ve onları olong olarak okuyabilir ve bitlere ayrıştırabilirsiniz.
Onlar. kaydederken ve okurken diziler aynı tipte olmalı, doğru mu anladım? Yeter?
boolFileCopy (
string src_filename, // имя файла-источникаint common_flag, // место действияstring dst_filename, // имя файла назначенияint mode_flags // способ доступа
);
Açıklama diyor ki:
common_flag
[içinde] Dosyanın konumunu belirten bayrak . common_flag=FILE_COMMON ise, dosya tüm istemci terminallerinin ortak klasöründe bulunur. Aksi takdirde, dosya yerel bir klasördedir.
Şimdi, kaynak dosya paylaşılan bir klasördeyse, common_flag=FILE_COMMON, bu anlaşılabilir. Dosya yerel bir klasördeyse - hangi bayrağı belirtmeliyim? common_flag parametresi varsayılan değildir, bu da bazı değerlerin hala belirtilmesi gerektiği anlamına gelir.
Şimdi, kaynak dosya paylaşılan bir klasördeyse, common_flag=FILE_COMMON, bu anlaşılabilir. Dosya yerel bir klasördeyse - hangi bayrağı belirtmeliyim? common_flag parametresi varsayılan değildir, bu da bazı değerlerin hala belirtilmesi gerektiği anlamına gelir.
FILE_COMMON belirtilmemişse, varsayılan olarak yerel klasörde olacaktır.
MQL5.com web sitesine giriş yapmak için çerezlerin kullanımına izin vermelisiniz.
Lütfen tarayıcınızda gerekli ayarı etkinleştirin, aksi takdirde giriş yapamazsınız.
Hesabınıza giriş yaptınız. İki faktörlü kimlik doğrulama devre dışı bırakıldı. Yeniden kurup yeni bir QR kodu tarayın veya iki faktörlü kimlik doğrulama devre dışıyken devam edin.
Uzun zamandır dosya işlemleriyle çalışmıyorum.Bak, FileOpen() kullanırken bir CSV dosyası bildirdiniz. Daha önce, tüm yazılı öğelerin unicode veya ansi dizelerine dönüştürüldüğü belirtilmişti. Belki burada bir köpek vardır?
Lanet olası Winnie the Pooh!!!
Orada "ortalığı karıştırdı" :) FILE_ANSI parametresini ekledi ve her şey saat gibi gitti!
FileOpen("Fiyat Etiketi\\"+_Symbol+tpl_ext,FILE_READ|FILE_CSV| FILE_ANSI ,';',CP_ACP);
Yedelkin , TheXpert bahşiş için teşekkürler!!! :)
is_vale :
...Hata ayıklayıcıda gördüğüme göre (sTF değişkeninde bazı Çin hiyeroglifleri var), dosyanın içeriğini Unicode olarak okudu! Dosyayı açarken tüm geçerli kod sayfalarını denedim fakat sonuç aynı :( Dosyanın kendisi Windows kodlaması ile yazılmıştır.
Köpeğin nerede dolaştığı hakkında bir fikri olan var mı?
Varsayılan, UNICODE ile yazılmıştır. Öyleyse FILE_ANSI bayrağını ayarlayın:
Varsayılan, UNICODE ile yazılmıştır. Öyleyse FILE_ANSI bayrağını ayarlayın:
[] dizisinin boyutu hakkında soru. FileReadArray() işlevinde kullanmadan önce dizi[] dizisinin boyutunu bir şekilde ayarlamam gerekir mi, yoksa bu durumda "terminal yürütme sistemi" boyutuyla ilgilenir mi?
Hayır, işlevin kendisi dosyadaki gerekli miktarda veri için bellek ayıracaktır, dinamik bir diziyi geçmek yeterlidir.
Bu arada, orada yazılmışlarsa, basit yapıların dizilerini de okuyabilirsiniz.
PS FileReadArray() işlevi kaydedilen verilerin türünü tanımıyor, bu nedenle dikkatli olun, bu özelliklerden biridir, kopyaları kaydedebilir ve onları olong olarak okuyabilir ve bitlere ayrıştırabilirsiniz.
Harika.
PS FileReadArray() işlevi kaydedilen verilerin türünü tanımıyor, bu nedenle dikkatli olun, bu özelliklerden biridir, kopyaları kaydedebilir ve onları olong olarak okuyabilir ve bitlere ayrıştırabilirsiniz.
Onlar. kaydederken ve okurken diziler aynı tipte olmalı, doğru mu anladım? Yeter?
Harika.
Onlar. kaydederken ve okurken diziler aynı tipte olmalı, doğru mu anladım? Yeter?
Evet.
Açıklama diyor ki:
common_flag
[içinde] Dosyanın konumunu belirten bayrak . common_flag=FILE_COMMON ise, dosya tüm istemci terminallerinin ortak klasöründe bulunur. Aksi takdirde, dosya yerel bir klasördedir.
Açıklama diyor ki:
Şimdi, kaynak dosya paylaşılan bir klasördeyse, common_flag=FILE_COMMON, bu anlaşılabilir. Dosya yerel bir klasördeyse - hangi bayrağı belirtmeliyim? common_flag parametresi varsayılan değildir, bu da bazı değerlerin hala belirtilmesi gerektiği anlamına gelir.