[아카이브!] 포럼을 어지럽히 지 않도록 초보자 질문. 프로, 놓치지 마세요. 너 없이는 아무데도 - 2. - 페이지 311

[삭제]  
chief2000 :

- 파일에서 배열 요소의 수를 찾을 수 있습니까? 이 경우 불필요한 조치를 피하는 방법은 무엇입니까?


FileSize (핸들)를 요소 크기로 나눈 값 = 요소 수?
 
Figar0 :

FileSize(handle)를 요소 크기로 나눈 값 = 요소 수?

추측인가요?

바이너리 파일에서 요소의 크기를 찾는 방법은 무엇입니까? 아마도 그것의 일부는 요소뿐만 아니라 점유되어 있습니까?

 
chief2000 :

count를 너무 크게 설정하면 많은 null 값이 형성됩니다(맞나요?)

그리고 문서는 말한다

Функция возвращает количество фактически прочитанных элементов.
[삭제]  
chief2000 :

추측인가요?

바이너리 파일에서 요소의 크기를 찾는 방법은 무엇입니까? 아마도 그것의 일부는 요소뿐만 아니라 점유되어 있습니까?


요소의 크기는 4 또는 8 중 무엇을 작성하느냐에 따라 달라집니다. 작성 과정은 어떤 모습인가요?
 
Roger :

그리고 문서는 말한다

파일에 1000개의 요소가 있고 count=20이면 실제로 20개를 읽습니다.

하지만 count=5000이면 어떻게 될까요?

"데이터를 읽기 전에 배열의 크기가 충분해야 합니다"가 의미하는 바가 명확하지 않습니다. 모든 요소를 요소 수만큼 배열로 읽는 것이 더 쉬울 것이며 필요한 경우 배열을 자를 수 있습니다. , 등.

 
Figar0 :

요소의 크기는 4 또는 8 중 무엇을 작성하느냐에 따라 달라집니다. 작성 과정은 어떤 모습인가요?

나는 다음을 사용합니다(쓰기와 읽기는 서로 독립적인 두 단계입니다).

 FileWriteArray( int handle, object array[], int start, int count) 
[삭제]  
chief2000 :

나는 다음을 사용합니다(쓰기와 읽기는 서로 독립적인 두 단계입니다).


int 파일 쓰기 배열 ( int 핸들, 객체 array[], int start, int count)

이 함수는 배열을 바이너리 파일에 씁니다. int, bool, datetime 및 color 유형의 배열은 4바이트 정수로 요소별로 작성됩니다. 이중 배열은 8바이트 부동 소수점 숫자로 요소별로 작성됩니다.

관심을 가져야 할 사항을 강조 표시했습니다. 이중 배열이 파일에 기록된 경우 파일 크기를 8로 나누면 파일 의 배열 요소 수가 표시됩니다.

 
Figar0 :

int 파일 쓰기 배열 ( int 핸들, 객체 array[], int start, int count)

이 함수는 배열을 바이너리 파일에 씁니다. int, bool, datetime 및 color 유형의 배열은 4바이트 정수로 요소별로 작성됩니다. 이중 배열은 8바이트 부동 소수점 숫자로 요소별로 작성됩니다.

관심을 가져야 할 사항을 강조 표시했습니다. 이중 배열이 파일에 기록된 경우 파일 크기를 8로 나누면 파일의 배열 요소 수가 표시됩니다.

이제 텍스트 뷰어에서 저장된 파일 하나를 열었습니다. 다음과 같습니다.

약 50개의 요소가 있는 것처럼 보이지만(이 정도의 요소가 있어야 함) 크기는 2432바이트입니다. 그에게 "공백"이있는 것처럼 보입니다.

[삭제]  
안녕하세요. 말해 주세요. 히스토그램이 0이 아닌 주어진 값에서 그려지도록 MQL4의 별도 창에서 표시기의 히스토그램을 만드는 방법. Ichimoku 표시기가 별도의 창에서 다른 기간에 대한 값을 그리기를 원합니다.
[삭제]  
chief2000 : 빈 조개껍데기를 품고 있는 것 같습니다.
당신이 기록한 것을 저장합니다) 기적은 여기서 일어나지 않습니다.