파일 기능

파일 작업을 위한 기능 그룹입니다.

보안상의 이유로 파일 작업은 MQL5 언어로 엄격하게 제어됩니다. MQL5를 사용하여 파일 작업을 수행하는 파일은 파일 샌드박스 외부에 있을 수 없습니다.

작업 파일을 찾을 수 있는 디렉토리는 두 개(하위 디렉토리 포함)입니다:

  • terminal_data_folder\MQL5\FILES\ (터미널 메뉴에서 "파일" - "데이터 디렉토리 열기"를 선택);
  • 컴퓨터에 설치된 모든 터미널의 공통 폴더 - 일반적으로 C:\Documents and Settings\All Users\Application Data\MetaQuotes\Terminal\Common\Files 디렉토리에 위치.

TerminalInfoString() 함수를 사용하여 ENUM_TERMINAL_INFO_STRING 열거를 사용하여 이러한 카탈로그의 이름을 가져오는 프로그램 메서드가 있습니다:

//--- 터미널 데이터를 저장하는 폴더
   string terminal_data_path=TerminalInfoString(TERMINAL_DATA_PATH);
//--- 모든 클라이언트 터미널의 공통 폴더
   string common_data_path=TerminalInfoString(TERMINAL_COMMONDATA_PATH);

다른 디렉토리의 파일을 사용하는 것은 금지됨.

파일 기능을 통해 소위 "이름 지정 파이프"로 작업할 수 있습니다. 이를 위하여, 적절한 매개변수를 사용하여 FileOpen() 기능을 호출하기만 하면 됩니다.

기능

액션

FileSelectDialog

파일 또는 폴더 열기/대화상자 생성

FileFindFirst

지정된 필터에 따라 디렉토리에서 파일 검색을 시작

FileFindNext

FileFindFirst() 기능으로 시작한 검색을 계속 진행

FileFindClose

검색 핸들을 닫기

FileOpen

지정된 이름과 플래그가 있는 파일을 열기

FileDelete

지정된 파일을 삭제

FileFlush

입력/출력 파일 버퍼에 남아있는 모든 데이터를 디스크에 작성

FileGetInteger

파일의 정수 속성을 가져오기

FileIsEnding

읽는 과정에서 파일의 끝을 정하기

FileIsLineEnding

읽는 과정 중 텍스트 파일에서 줄의 끝을 정하기

FileClose

이전에 연 파일을 닫기

FileIsExist

파일이 있는지 확인

FileCopy

로컬 또는 공유 폴더에서 다른 파일로 원본 파일 복사

FileMove

파일 이동 또는 이름 변경

FileReadArray

BIN 유형의 파일에서 문자열을 제외한 모든 유형의 배열을 읽기

FileReadBool

CSV의 파일에서 현재 위치에서 구분 기호(또는 텍스트 줄의 끝)까지 문자열을 입력하고읽고 문자열을 bool 유형 갑으로 변환

FileReadDatetime

CSV 파일에서 다음 형식중 하나의 문자열을 읽습니다: "YYYY.MM.DD HH:MM:SS", "YYYY.MM.DD" 또는 "HH:MM:SS" - 이 값을 날짜시간 값으로 변환

FileReadDouble

파일 포인터의 현재 포지션에서 이중 값을 읽기

FileReadFloat

파일 포인터의 현재 포지션에서 플로트(float) 값을 읽기

FileReadInteger

파일 포인터의 현재 위치에서 int, short 또는 char 값을 읽기

FileReadLong

파일 포인터의 현재 포지션에서 long 유형 값 읽기

FileReadNumber

CSV 파일의 현재 포지션에서 구분 기호(또는 텍스트 줄의 끝)까지 문자열을 읽기 및 문자열을 이중값으로 변환

FileReadString

파일에서 파일 포인터의 현재 포지션의 문자열 읽기

FileReadStruct

바이너리 파일의 내용을 파일 포인터의 현재 포지션에서 매개변수로 전달된 구조로 읽기

FileSeek

파일 포인터의 포지션을 지정된 바이트 수만큼 지정된 포지션으로 이동

FileSize

해당 열기 파일의 크기를 반환

FileTell

해당 열기 파일의 파일 포인터의 현재 포지션을 반환

FileWrite

CSV 또는 TXT 유형의 파일에 데이터 쓰기

FileWriteArray

문자열을 제외한 모든 유형의 배열을 BIN 유형 파일에 쓰기

FileWriteDouble

파일 포인터의 현재 포지션에서 바이너리 파일에 double 유형의 값을 쓰기

FileWriteFloat

파일 포인터의 현재 포지션에서 바이너리 파일에 float 유형의 값 쓰기

FileWriteInteger

파일 포인터의 현재 포지션에서 바이너리 파일에 int 유형의 값 쓰기

FileWriteLong

파일 포인터의 현재 포지션에서 바이너리 파일에 long 유형의 값 쓰기

FileWriteString

파일 포인터의 현재 포지션에서 시작하여 BIN 또는 TXT 파일에 문자열 매개변수 값을 쓰기

FileWriteStruct

파일 포인터에서 현재 포지션에서 시작하여 매개변수로 전달된 구조의 내용을 바이너리 파일에 쓰기

FileLoad

지정된 바이너리 파일의 모든 데이터를 전달된 일련의 숫자 유형 또는 단순 구조로 읽기

FileSave

매개변수로 전달된 배열의 모든 요소를 바이너리 파일에 쓰기

FolderCreate

Files 디렉토리에 폴더를 생성

FolderDelete

선택된 디렉토리를 제거 폴더가 비어있지 않으면 제거할 수 없습니다.

FolderClean

지정된 폴더의 모든 파일을 삭제

파일이FileOpen()을 사용하여 쓰기 위해 열려 있는 경우 경로에 지정된 모든 하위 폴더가 없으면 하위 폴더가 생성됩니다.