PDA

Zobacz pełną wersję : Potrzebujesz pomocy w CSV



xreakbboy
08-27-2009 11:09, 11:09
Czy jakiś programista może mi pomóc z csv.
H = FileOpen (D.csv, FILE_READ | FILE_WRITE, ';');
otworzył plik i
Napisz to
FileWrite (H, Open [0]);
z deklaracją podwójnego H
ale
podwójne C;
if (Hgt; 0)
{
C = FileReadNumber (H);
FileClose (H);
}
niczego nie czyta.
Błąd 4051.
Ponadto, jak sprawić, by zapisywał się do drugiej kolumny, zamiast umieszczać ogranicznik ”;”?
Z góry dziękuję.

xreakbboy
12-06-2021 01:57, 01:57
Rozumiem, że to trudne pytanie. Jest to jeden z najtrudniejszych punktów programowania i nie wszyscy programiści znają rozwiązanie. Czy na tym forum jest jakiś programista, który zna odpowiedź? Wygląda na to, że nikt nie wie.

Burespearc91
12-06-2021 03:17, 03:17
Rozumiem, że to trudne pytanie. Jest to jeden z najtrudniejszych punktów programowania i nie wszyscy programiści znają rozwiązanie. Czy na tym forum jest jakiś programista, który zna odpowiedź? Wygląda na to, że nikt nie wie.
Nikt nie wie na podstawie żałosnych informacji, które opublikowałeś. Zamiast po prostu zgadywać fragmenty kodu, które nie tworzą pełnego obrazu tego, co robi twój program obciążony błędem, dlaczego nie opublikować całego pliku, aby ktoś mógł go przeszukać i posprzątać bałagan, który zostawiłeś?

xreakbboy
12-06-2021 04:38, 04:38
Magnumfreak, dzięki za odpowiedź. Wiem, że jesteś ekspertem od programowania. Widziałem twoje posty. Proszę bardzo: podwójne H; H = FileOpen (D.csv, FILE_READ | FILE_WRITE, ';'); if (Hgt; 0) {FileWrite (H, Open [0]);/, Close [0]);/ogranicznik ';' wstawiono FileClose (H); } podwójne C; if (Hgt; 0) {C = FileReadNumber (H); FileClose (H); }/Comment (C); Comment (GetLastError ()); return (0); } nie może odczytać liczby, a także ustawia ”;” zamiast pisać do następnej kolumny

livmoorethwzombie
12-06-2021 05:59, 05:59
Jaki jest typ danych uchwytów plików? Podświetl FileOpen i naciśnij F1.

Burespearc91
12-06-2021 07:20, 07:20
Magnumfreak, dzięki za odpowiedź. Wiem, że jesteś ekspertem od programowania. Widziałem twoje posty. Proszę bardzo: podwójne H; H = FileOpen (D.csv, FILE_READ | FILE_WRITE, ';'); if (Hgt; 0) {FileWrite (H, Open [0]);/, Close [0]);/ogranicznik ';' wstawiono FileClose (H); } podwójne C; if (Hgt; 0) {C = FileReadNumber (H); FileClose (H); }/Comment (C); Comment (GetLastError ()); return (0); } nie może odczytać liczby, a także ustawia ”;” zamiast pisać do następnej kolumny
Prawdopodobnie dlatego, że zamykasz plik po zapisaniu danych, ale nigdy nie otwierasz ponownie pliku przed próbą odczytu z niego.

xreakbboy
12-06-2021 08:40, 08:40
Magnumfreak, działa !!! Dziękuję Ci. Czy mogę prosić również o pisanie do następnej kolumny, ponieważ wstawia ogranicznik w tej samej kolumnie. Próbowałem i to nie działało. Proszę pomóż. Dziękuję Ci.

Burespearc91
12-06-2021 10:01, 10:01
FileSeek (uchwyt, 0, SEEK_END); Po prostu powiedz, aby przejść do końca pliku za pomocą polecenia FileSeek.

xreakbboy
12-06-2021 11:22, 11:22
Próbowałem, ale nie mogłem tego zrobić. Ale zrobił to w inny sposób i działa również. Ale dziękuję za poświęcony czas. Czy mogę prosić o następną pomoc? H = FileOpen (DD.csv, FILE_CSV, ”; '); podwójne C; if (Hgt; 0) {C = FileReadNumber (H);/pozwól mi pomyśleć FileClose (H); } Komentarz (C); 1) jak odczytać numer znajdujący się w 2. wierszu 2. wiersza 2) czy możliwe jest otwarcie Open [0] do pliku z drugiego brokera? Dziękuję Ci bardzo.

xreakbboy
12-06-2021 12:43, 12:43
Ponieważ Magnumfreak jest prawdopodobnie zajęty, może komuś pomóc. Dziękuję Ci.

xreakbboy
12-06-2021 14:03, 14:03
Czy ktoś może ci pomóc? H = FileOpen (DD.csv, FILE_CSV, ”; '); podwójne C; if (Hgt; 0) {C = FileReadNumber (H);/pozwól mi pomyśleć FileClose (H); } Komentarz (C); 1) jak odczytać numer znajdujący się w 2. wierszu 2. wiersza 2) czy możliwe jest otwarcie Open [0] do pliku z drugiego brokera? Dziękuję Ci bardzo.

xreakbboy
12-06-2021 15:24, 15:24
Nikt nie chce pomóc. To jest w porządku ze mną. Czy na tym forum znajduje się co najmniej jedna dobra osoba, która może udzielić mi informacji o tym, jak pracować z plikami CSV? Uważam, że nie ma programisty, który wie wszystko. Niektóre błędy mogą zająć kilka dni. Czy tak trudno jest ci pomóc? Dlaczego ta sekcja poświęcona programowaniu? Czy jest po prostu udzielenie niejasnych odpowiedzi, aby pokazać, że jestem ekspertem i że wszyscy widzą i zdobywają więcej klientów? A co z dobrą wolą? Ten wątek się skończył.

Xras3k33
12-06-2021 16:45, 16:45
Nikt nie chce pomóc. To jest w porządku ze mną. Czy na tym forum znajduje się co najmniej jedna dobra osoba, która może udzielić mi informacji o tym, jak pracować z plikami CSV? Uważam, że nie ma programisty, który wie wszystko. Niektóre błędy mogą zająć kilka dni. Czy tak trudno jest ci pomóc? Dlaczego ta sekcja poświęcona programowaniu? Czy jest po prostu udzielenie niejasnych odpowiedzi, aby pokazać, że jestem ekspertem i że wszyscy widzą i zdobywają więcej klientów? A co z dobrą wolą? Ten wątek się skończył.
1.) Każda wbudowana funkcja jest udokumentowana w odnośniku mql4. Przeczytaj dokumentację FileReadNumber (). Ta funkcja odczyta aktualną pozycję do następnego ogranicznika. 1a) Logicznie więc, jeśli masz dwie liczby w jednej linii, musisz wywołać je dwa razy na linię. 1b) Jeśli chcesz przeczytać linię inną niż pierwsza, musisz najpierw przeczytać wszystkie inne linie przed tą linią, ponieważ nie ma możliwości zgadnięcia gdzie dokładnie powinieneś umieścić szablon dla danej linii, ponieważ one nie mają ustalony rozmiar. 2) filetype uchwytów plików to int, a nie podwójne. Znów można to znaleźć w dokumentacji funkcji FileOpen (). 3) jeśli chcesz uczyć się programowania, nie zaczynaj od mql4. To nie zadziała! Jeśli nie chcesz się uczyć programowania, natychmiast przestań komunikować się z mql4! Jeśli chcesz nauczyć się programowania (naprawdę musisz tego chcieć), istnieje wiele zasobów w Internecie i przyjazne dla początkujących języki programowania. Proponuję zrobić pierwsze kroki, ucząc się Pythona. Po opanowaniu pierwszych kroków i poczuciu mniej więcej bezpieczeństwa w samych podstawach programowania (zmienne, funkcje, klasy, obiekty) możesz zainteresować się statycznie napisanym językiem, to znowu da ci kilka wyzwań do opanowania i dodatkowo Nowa składnia do nauki, ale już wyuczone koncepcje zachowują ważność, sugeruję użycie ObjectPascal, ponieważ bezlitośnie egzekwuje bezpieczeństwo typu, coś, co musisz znać, kiedy masz do czynienia z językami podobnymi do C, które mają statyczny, ale bardzo słaby system. Te dwa języki są dobrymi kandydatami do dwóch ważnych ekstremów, które musieliście widzieć i pracować, zanim przejdziecie do błędów podatnych na błędy i trudnych do debugowania języków takich jak C, C i ich okaleczonego potomka MQL. Oba języki są łatwo dostępne, łatwe do pobrania i użytkowania oraz przyjazne dla początkujących. Są też bardzo mocno wykorzystywane w środowiskach produkcyjnych, więc nie musisz się czegoś nauczyć tylko teoretycznego.