ファイルへの書き込みを改行で行う - ページ 7 1234567 新しいコメント Alexey Viktorov 2020.08.25 10:30 #61 EfremovSergey:忙しい」フラッグ(先着順)とほぼ同じで、ただ何倍も複雑ですが、アイデアは面白いです、気に入りました、ありがとう。 おそらく、共有編集FILE_SHARE_WRITEを 無効にして、読み込みのみFILE_READを開く人は読み込み、読み込みと書き込みFILE_READ|FILE_WRITEを開く人はエラーを出してファイルを開き直すようにした方が簡単でしょう。この方が簡単かもしれませんね。 Alexey Viktorov 2020.08.25 10:31 #62 EfremovSergey:FileClose保存の意味がよくわからないのですが。 ファイルを閉じる ときだけでなく、変更した内容もディスクに保存されるということです。 EfremovSergey 2020.08.25 19: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千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
忙しい」フラッグ(先着順)とほぼ同じで、ただ何倍も複雑ですが、アイデアは面白いです、気に入りました、ありがとう。
おそらく、共有編集FILE_SHARE_WRITEを 無効にして、読み込みのみFILE_READを開く人は読み込み、読み込みと書き込みFILE_READ|FILE_WRITEを開く人はエラーを出してファイルを開き直すようにした方が簡単でしょう。この方が簡単かもしれませんね。
FileClose保存の意味がよくわからないのですが。
ファイルを閉じる ときだけでなく、変更した内容もディスクに保存されるということです。
読み込み側では、すべてのデータを抽出した後、ファイルを閉じる ことなく空にできるフラグがあります。
書き込み側では、他のExpert Advisorによって既に開かれているファイルを開くことを許可しないフラグが設定されています。
このコードはあくまで例であり、ハンドルやチケットの処理などのチェック機能は不足していますが、希望する結果に近いものです。
皆さん、本当にありがとうございました。また、情報や役に立つヒントをたくさんありがとうございました。