나는 OOP를 매우 어렵게 이해하므로 변경하는 것이 나에게 고통입니다. 내가 알기로 요점은 읽기를 담당하는 클래스에 있으며 전체 파일이 거기에서 문자열 배열로 분할되고 그 다음에야 내 요청에 따라 이러한 문자열 값을 다른 유형으로 변환하고 넣습니다. 내 스크립트에서 int 유형의 배열로. 내가 올바르게 이해했다면 프로세스 속도를 높이려면 전체 파일을 읽고 총 행과 열이 몇 개인지, 이러한 각 셀에 몇 개의 문자가 있는지 이해해야 하며 이미 적절한 배열 크기를 선택해야 합니다. 떨어져 있는? 그럼 어떻게 할까요?
400메가바이트가 어디서 오는지 바로 알고 싶습니다. 메모리가 할당되어 있다는 것을 정확히 이해했는데 이전에 할당된 메모리가 지워지지 않거나 버려지는 건가요?
400MB는 각각 12바이트, 12*36=432인 빈 줄이 있는 3600만 셀입니다.
더 잘할 수 있는 방법을 알려면 해결 중인 문제에 대해 알려주십시오. 파일이 변경되는 빈도와 양, 매번 파일에서 모든 것을 읽어야 하는지 여부, 비어 있지 않은 셀의 수가 줄마다 일정한지, 모든 셀에 정수만 포함되어 있는지 여부. 일주일에 한 번은 9분을 투자해야 하며 이는 전혀 많은 시간이 아닙니다. 그러면 아무것도 변경할 필요가 없습니다.
일반적으로 "더 빠르게 하려면 어디로 가야 하는가"의 관점에서 - 주요 방향: 정수 값에 해당하는 57개의 필드가 있는 구조체를 선언하고 쓰기와 읽기 모두에 사용(파일은 바이너리) . 그러면 78MB가 구분 기호 및 문자열 표현 없이 디스크에서 메모리로 직접 읽혀지는 데 1초도 채 걸리지 않습니다. 디버깅을 위해 출력을 .csv에도 저장합니다. 이러한 구조의 배열에 있는 요소의 수는 파일 크기 에 따라 즉시 결정됩니다.
더 잘할 수 있는 방법을 알려면 해결 중인 문제에 대해 알려주십시오. 파일이 변경되는 빈도와 양, 매번 파일에서 모든 것을 읽어야 하는지 여부, 비어 있지 않은 셀의 수가 줄마다 일정한지, 모든 셀에 정수만 포함되어 있는지 여부. 일주일에 한 번은 9분을 투자해야 하며 이는 전혀 많은 시간이 아닙니다. 그러면 아무것도 변경할 필요가 없습니다.
작업은 보편적이며 CSV 형식의 파일을 읽는 것입니다. 이 형식은 이제 데이터를 제공하는 다양한 프로그램에 보편적이기 때문입니다. 이 스크립트에 대해 구체적으로 말하면 모든 것을 읽고 Excel이 수식에서 떨어지는 것처럼 계산하면됩니다. 셀에는 정수가 아닌 숫자가 포함될 수 있습니다(이 예에서는 특별히 없음). 일주일에 한 번이면 9분도 얼마 안 되지만.. 역시 옵티마이저를 통해 이 정도의 데이터를 작업하고 , 파일을 옆으로 옮기고, 에이전트를 이용해 그곳에서 처리하고, csv 형식으로 결과를 가져와야 하는 것도 필요하다. (물론 여기에서는 이미 다른 형식으로 가능합니다) 처리를 다시 수행하십시오. 이것이 MT5를 사용하여 많은 양의 데이터를 처리할 계획이 있기 때문에 이 문제를 공개적으로 논의하기로 결정한 이유입니다.
블라디미르 :
일반적으로 "더 빠르게 하려면 어디로 가야 하는가"의 관점에서 - 주요 방향: 정수 값에 해당하는 57개의 필드가 있는 구조체를 선언하고 쓰기와 읽기 모두에 사용(파일은 바이너리) . 그러면 78MB가 구분 기호 및 문자열 표현 없이 디스크에서 메모리로 직접 읽혀지는 데 1초도 채 걸리지 않습니다. 디버깅을 위해 출력을 .csv에도 저장합니다. 이러한 구조의 배열에 있는 요소의 수는 파일 크기에 따라 즉시 결정됩니다.
어떻게 할 수 있는지조차 모르겠습니까? 아니면 특별한 조건에서 원본 파일을 생성해야 하는 건가요? 그런 다음 CSV에서 바이너리 형식으로 변환기를 만들 수 있습니까?
두 번째 수업도 볼 수 있습니다. 열을 무제한으로 작성하는 방법을 가르치는 방법은 무엇입니까?
앗
나는 oops .. 당신이 즉시 할 수 있는데 왜 문자열에 배열을 쓰는지 알았습니다
나는 oops .. 당신이 즉시 할 수 있는데 왜 문자열에 배열을 쓰는지 알았습니다
사람이 Excel로 처리한다고 쓰여 있습니다.
사람이 Excel에서 처리한다고 쓰여 있습니다.
이것은 쓰여 있지 않다
이것은 쓰지 않는다
맨 처음 포스팅. 자세히 읽어보면 이 파일은 MT5와 관련이 없을 수도 있습니다. 또는 구체적으로 처리됩니다.
맨 처음 포스팅. 자세히 읽어보면 이 파일은 MT5와 관련이 없을 수도 있습니다. 또는 구체적으로 처리됩니다.
글쎄, 그가 그것을 어디서 얻었는지 알아 봅시다.
배열로 읽을 수도 있습니다. 아마도코드 분석 감사합니다.
나는 OOP를 매우 어렵게 이해하므로 변경하는 것이 나에게 고통입니다. 내가 알기로 요점은 읽기를 담당하는 클래스에 있으며 전체 파일이 거기에서 문자열 배열로 분할되고 그 다음에야 내 요청에 따라 이러한 문자열 값을 다른 유형으로 변환하고 넣습니다. 내 스크립트에서 int 유형의 배열로. 내가 올바르게 이해했다면 프로세스 속도를 높이려면 전체 파일을 읽고 총 행과 열이 몇 개인지, 이러한 각 셀에 몇 개의 문자가 있는지 이해해야 하며 이미 적절한 배열 크기를 선택해야 합니다. 떨어져 있는? 그럼 어떻게 할까요?
400메가바이트가 어디서 오는지 바로 알고 싶습니다. 메모리가 할당되어 있다는 것을 정확히 이해했는데 이전에 할당된 메모리가 지워지지 않거나 버려지는 건가요?
400MB는 각각 12바이트, 12*36=432인 빈 줄이 있는 3600만 셀입니다.
더 잘할 수 있는 방법을 알려면 해결 중인 문제에 대해 알려주십시오. 파일이 변경되는 빈도와 양, 매번 파일에서 모든 것을 읽어야 하는지 여부, 비어 있지 않은 셀의 수가 줄마다 일정한지, 모든 셀에 정수만 포함되어 있는지 여부. 일주일에 한 번은 9분을 투자해야 하며 이는 전혀 많은 시간이 아닙니다. 그러면 아무것도 변경할 필요가 없습니다.
일반적으로 "더 빠르게 하려면 어디로 가야 하는가"의 관점에서 - 주요 방향: 정수 값에 해당하는 57개의 필드가 있는 구조체를 선언하고 쓰기와 읽기 모두에 사용(파일은 바이너리) . 그러면 78MB가 구분 기호 및 문자열 표현 없이 디스크에서 메모리로 직접 읽혀지는 데 1초도 채 걸리지 않습니다. 디버깅을 위해 출력을 .csv에도 저장합니다. 이러한 구조의 배열에 있는 요소의 수는 파일 크기 에 따라 즉시 결정됩니다.
400MB는 각각 12바이트, 12*36=432인 빈 줄이 있는 3600만 셀입니다.
수학은 명확합니다.
더 잘할 수 있는 방법을 알려면 해결 중인 문제에 대해 알려주십시오. 파일이 변경되는 빈도와 양, 매번 파일에서 모든 것을 읽어야 하는지 여부, 비어 있지 않은 셀의 수가 줄마다 일정한지, 모든 셀에 정수만 포함되어 있는지 여부. 일주일에 한 번은 9분을 투자해야 하며 이는 전혀 많은 시간이 아닙니다. 그러면 아무것도 변경할 필요가 없습니다.
작업은 보편적이며 CSV 형식의 파일을 읽는 것입니다. 이 형식은 이제 데이터를 제공하는 다양한 프로그램에 보편적이기 때문입니다. 이 스크립트에 대해 구체적으로 말하면 모든 것을 읽고 Excel이 수식에서 떨어지는 것처럼 계산하면됩니다. 셀에는 정수가 아닌 숫자가 포함될 수 있습니다(이 예에서는 특별히 없음). 일주일에 한 번이면 9분도 얼마 안 되지만.. 역시 옵티마이저를 통해 이 정도의 데이터를 작업하고 , 파일을 옆으로 옮기고, 에이전트를 이용해 그곳에서 처리하고, csv 형식으로 결과를 가져와야 하는 것도 필요하다. (물론 여기에서는 이미 다른 형식으로 가능합니다) 처리를 다시 수행하십시오. 이것이 MT5를 사용하여 많은 양의 데이터를 처리할 계획이 있기 때문에 이 문제를 공개적으로 논의하기로 결정한 이유입니다.
일반적으로 "더 빠르게 하려면 어디로 가야 하는가"의 관점에서 - 주요 방향: 정수 값에 해당하는 57개의 필드가 있는 구조체를 선언하고 쓰기와 읽기 모두에 사용(파일은 바이너리) . 그러면 78MB가 구분 기호 및 문자열 표현 없이 디스크에서 메모리로 직접 읽혀지는 데 1초도 채 걸리지 않습니다. 디버깅을 위해 출력을 .csv에도 저장합니다. 이러한 구조의 배열에 있는 요소의 수는 파일 크기에 따라 즉시 결정됩니다.
어떻게 할 수 있는지조차 모르겠습니까? 아니면 특별한 조건에서 원본 파일을 생성해야 하는 건가요? 그런 다음 CSV에서 바이너리 형식으로 변환기를 만들 수 있습니까?
두 번째 수업도 볼 수 있습니다. 열을 무제한으로 작성하는 방법을 가르치는 방법은 무엇입니까?
WriteArray / Read는 최대입니다. 크기가 300MB에 도달하면 모든 것이 매우 빠르게 일어나고 RAM이 먹지 않습니다.
읽기/쓰기용 코드가 많은 이유는 무엇입니까? 모든 것이 4줄로 수행됩니다.
이 작업을 수행하는 방법을 보여줄 수 있습니까?
글쎄, 그가 그것을 어디서 얻었는지 알아 봅시다.
배열로 읽을 수도 있습니다. 아마도CSV는 MO 관련 소프트웨어를 포함하여 다양한 소프트웨어에서 지원되는 범용 파일 형식입니다.
또한 서로 다른 MT5 프로그램(스크립트/어드바이저) 간에 데이터를 전송할 때 편리한 파일이며 공간을 많이 차지하지 않습니다.
이 작업을 수행하는 방법을 보여줄 수 있습니까?
다음과 같이 파일을 읽어보십시오.
https://www.mql5.com/ru/docs/files/filereadarray
당장 터미널 열어야지 내일 mb)