새 줄에 파일 쓰기 - 페이지 7 1234567 새 코멘트 Alexey Viktorov 2020.08.25 12:30 #61 EfremovSergey : 이것은 "바쁜"플래그 (먼저 일어난 사람이 슬리퍼를 얻음)와 거의 같지만 훨씬 더 어렵지만 아이디어는 흥미롭고 좋아했습니다. 감사합니다. FILE_SHARE_WRITE의 공동 편집을 제공하지 않고 누군가 FILE_READ를 읽기 전용으로 열도록 하고 누군가가 FILE_READ|FILE_WRITE 읽기 및 쓰기를 열도록 하면 오류를 수신하고 파일을 다시 열지 않는 것이 더 쉬울 것입니다. 아마도 더 쉬울 것입니다. Alexey Viktorov 2020.08.25 12:31 #62 EfremovSergey : FileClose로 저장하는 맥락에서 이것이 무엇을 의미하는지 정말로 이해하지 못했습니다. 즉 , 파일이 닫힐 때뿐 아니라 변경 사항이 디스크에 저장됩니다. EfremovSergey 2020.08.25 21:01 #63 string sep= ";" ; // знак разделителя ushort usep= StringGetCharacter (sep, 0 ); // код знака разделителя string arr[]; // массив данных для открытия ордера int h= 0 ; // handle_1 int h1= 0 ; // handle_2 int OnInit () { EventSetMillisecondTimer ( 3000 ); return ( INIT_SUCCEEDED ); } void OnDeinit ( const int reason) { EventKillTimer (); } void OnTimer () { h= FileOpen ( "Copy.txt" , FILE_READ | FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_TXT | FILE_COMMON , ";" ); // open файл FileSeek (h, 0 , SEEK_SET ); // перевод курсора в начало файла while ( FileIsEnding (h)== false ) // построчное чтение до конца файла { string s= FileReadString (h); // чтение строки StringSplit (s,usep,arr); // перенос подстрок в массив // открытие ордера с данными из массива OrderSend (arr[ 0 ],StrToInteger(arr[ 1 ]),StrToDouble(arr[ 2 ]),StrToDouble(arr[ 3 ]), 100 , 0 , 0 ); if ( FileIsEnding (h)== false ) // промежуточная проверка continue ; // возврат в начало по условию if h1= FileOpen ( "Copy.txt" , FILE_WRITE | FILE_SHARE_WRITE | FILE_SHARE_READ | FILE_TXT | FILE_COMMON , ";" ); // очистка файла FileClose (h1); // закрытие handle_2 } FileClose (h); // закрытие handle_1 Comment ( "\n H: " , h, "\n H1: " , h1); // вывод хэнделов на экран } 읽기 측면에서 플래그 배열이 있어 모든 데이터를 추출한 후 파일을 닫지 않고 내용을 지울 수 있습니다. 그리고 녹음 측면에서 다른 Expert Advisor가 이미 파일을 연 경우 파일을 열 수 없도록 하는 플래그의 배열입니다. //--- Открываем файл int h1= FileOpen ( "Copy.txt" , FILE_READ | FILE_WRITE | FILE_TXT | FILE_COMMON , ";" ); FileSeek (h1, 0 , SEEK_END ); FileWrite (h1, Symbol (),OP_BUYSTOP,OrderLots()*Koof,OrderStopLoss(),Slippage, 0 , 0 , IntegerToString (OrderTicket())); FileClose (h1); // закрываем файл 이 코드는 예시일 뿐이며 핸들과 티켓 등을 처리하기 위한 검사 기능이 충분하지 않지만 이미 필요한 결과에 충분히 가깝습니다. 좋은 정보와 조언을 주신 모든 분들께 다시 한 번 감사드립니다. 1234567 새 코멘트 트레이딩 기회를 놓치고 있어요: 무료 트레이딩 앱 복사용 8,000 이상의 시그널 금융 시장 개척을 위한 경제 뉴스 등록 로그인 공백없는 라틴 문자 비밀번호가 이 이메일로 전송될 것입니다 오류 발생됨 Google으로 로그인 웹사이트 정책 및 이용약관에 동의합니다. 계정이 없으시면, 가입하십시오 MQL5.com 웹사이트에 로그인을 하기 위해 쿠키를 허용하십시오. 브라우저에서 필요한 설정을 활성화하시지 않으면, 로그인할 수 없습니다. 사용자명/비밀번호를 잊으셨습니까? Google으로 로그인
이것은 "바쁜"플래그 (먼저 일어난 사람이 슬리퍼를 얻음)와 거의 같지만 훨씬 더 어렵지만 아이디어는 흥미롭고 좋아했습니다. 감사합니다.
FILE_SHARE_WRITE의 공동 편집을 제공하지 않고 누군가 FILE_READ를 읽기 전용으로 열도록 하고 누군가가 FILE_READ|FILE_WRITE 읽기 및 쓰기를 열도록 하면 오류를 수신하고 파일을 다시 열지 않는 것이 더 쉬울 것입니다. 아마도 더 쉬울 것입니다.
FileClose로 저장하는 맥락에서 이것이 무엇을 의미하는지 정말로 이해하지 못했습니다.
즉 , 파일이 닫힐 때뿐 아니라 변경 사항이 디스크에 저장됩니다.
읽기 측면에서 플래그 배열이 있어 모든 데이터를 추출한 후 파일을 닫지 않고 내용을 지울 수 있습니다.
그리고 녹음 측면에서 다른 Expert Advisor가 이미 파일을 연 경우 파일을 열 수 없도록 하는 플래그의 배열입니다.
이 코드는 예시일 뿐이며 핸들과 티켓 등을 처리하기 위한 검사 기능이 충분하지 않지만 이미 필요한 결과에 충분히 가깝습니다.
좋은 정보와 조언을 주신 모든 분들께 다시 한 번 감사드립니다.