Lavorare con i file. - pagina 6

 
Yedelkin:

Non lavoro con le operazioni sui file da molto tempo... Guarda, quando usi FileOpen() hai dichiarato un file di tipo CSV. Serve a specificare che tutti gli elementi scritti sono convertiti in stringhe unicode o ansi. Forse è qui che si trova il cane?

Fottuto Winnipuh!!!

È lì che è "sepolto" :) Ho aggiunto il parametro FILE_ANSI e tutto è andato liscio!

FileOpen("Price Label\\"+_Symbol+tpl_ext,FILE_READ|FILE_CSV|FILE_ANSI,';',CP_ACP);


Yedelkin ,TheXpert grazie per la dritta!!!:)

 

is_vale: 

...

Da quello che posso vedere nel debugger (nella variabile STF legge il contenuto del file come unicode! All'apertura del file ho provato tutte le codifiche possibili, ma il risultato è lo stesso :( Il file stesso è scritto in codifica Windows.

Qualcuno ha idea di dove sia il problema?

Per default è scritto in UNICODE. Quindi impostate il flagFILE_ANSI:

int handle=FileOpen("Price Label\\"+_Symbol+tpl_ext,FILE_READ|FILE_CSV|FILE_ANSI,';',CP_ACP);

 
tol64:

Per default è scritto in UNICODE. Perciò impostate il flagFILE_ANSI:

Prontamente richiesto. )))
 
uint  FileReadArray(
   int   file_handle,               // handle файла
   void  array[],                   // массив для записи
   int   start_item=0,              // с какой позиции массива писать
   int   items_count=WHOLE_ARRAY    // сколько читать
   );
Domanda sulla dimensione di array[]: devo impostare la dimensione di array[] prima di usarlo inFileReadArray() o il "runtime terminale" si prenderà cura della sua dimensione in questo caso?
 
Yedelkin:
Domanda sulla dimensione di array[]: devo impostare la dimensione di array[] prima di usarlo inFileReadArray() o se neoccuperà il "sistema di esecuzione terminale"?

No, la funzione distribuirà la memoria per la quantità necessaria di dati nel file.

A proposito, potete leggere gli array di strutture semplici allo stesso modo, se sono stati scritti lì.

La funzione FileReadArray() non riconosce il tipo di dati salvati, quindi fate attenzione, questa è una delle caratteristiche, potete salvare i duplicati e leggerli come una collocazione ed analizzarli in bit.

 

Fico.

Urain:

La funzione FileReadArray() non riconosce il tipo di dati salvati, quindi fate attenzione, questa è una delle caratteristiche, potete salvare i duplicati e leggerli in virgola mobile ed analizzarli in bit.

Quindi gli array dovrebbero essere dello stesso tipo quando si salva e si legge, ho ragione? È sufficiente?

 
Yedelkin:

Fico.

Quindi gli array devono essere dello stesso tipo quando si salva e si legge, ho ragione? È sufficiente?

Sì.
 
Urain:
Sì.
Gracias muchas!
 
bool  FileCopy(
    string  src_filename,       // имя файла-источника
    int     common_flag,        // место действия
    string  dst_filename,       // имя файла назначения
    int     mode_flags          // способ доступа
    );

La descrizione dice:

common_flag

[in] Flag che definisce la posizione del file. Se common_flag=FILE_COMMON, il file è nella cartella condivisa di tutti i terminali client. Altrimenti il file è nella cartella locale.

Se il file sorgente è nella cartella condivisa, allora common_flag=FILE_COMMON, questo è comprensibile. Ma se il file si trova in una cartella locale, quale flag dovrebbe essere specificato? Il parametro common_flag non è predefinito, il che significa che qualche valore deve essere specificato comunque.
 
Yedelkin:

La descrizione dice:

Se il file sorgente è in una cartella condivisa, allora common_flag=FILE_COMMON, è chiaro. Ma se il file si trova in una cartella locale, quale flag dovrebbe essere specificato? Il parametro common_flag non è predefinito, quindi qualche valore deve essere specificato comunque.
Se FILE_COMMON non è specificato, il default è nella cartella locale.
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов - Документация по MQL5