問題タブ [fclose]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c - FILE* からファイル記述子をレスキューすることは可能ですか?
FILE*
オブジェクトを渡す特定のクロスプラットフォーム ライブラリを使用する必要があります。
別のソース (継承) からファイル記述子を取得します。複数のプロセスで同じfd
状態を維持したいと考えています。fork
現在、ファイル記述子をオブジェクトfdopen
に変換するために使用しています。FILE*
私の問題は、オブジェクトのfclose
クリーンアップに使用すると、FILE*
接続されたファイル記述子が閉じられることです。
このファイル記述子が使用された後も保持したいと思います。
からファイル記述子をレスキューする方法はありますFILE*
か?
切り離す方法はありますか?
FILE*
または、ファイル記述子をダミーに置き換える方法はありますか?
PSこれはクロスプラットフォームである必要があり、とにかくPOSIX全体でうまくいきます。
php - なぜ PHP は fclose() の後も CSV ファイルに出力し続けるのですか?
Web ページで、以下のコードを使用していくつかのデータを CSV ファイルに書き込み、最後に fclose(); で閉じています。
既に fclose() が行われているのに、CSV ダウンロード ファイルに「HELLO WORLD」が入るのはなぜですか? ブラウザに表示するページの残りの HTML を出力したい。どうやってやるの?
php - 開いているファイルでリンク解除が成功するのはなぜですか?
開いているファイルが削除されるのはなぜですか? Windows Xamp では「まだ動作中です」というメッセージが表示されますが、他の PHP サーバーではファイルが開いていても削除され、「ファイルが削除されました」というメッセージが表示されます。最初のスクリプトがまだ機能していても、FTPからファイルを削除することもできます:(
c - c でマルチスレッド ftp プロトコルをコーディング中に fclose() によって引き起こされたセグメンテーション違反
Linux 環境でマルチスレッド ftp プロトコルをコーディングしているときに、セグメンテーション違反の問題が発生しました。このセグメンテーションは、fclose() ファイル関数によるものです。
これは私のコードです
クライアントコード: クライアントがコマンドとして書いたものをテストします。たとえば、彼が「put filename」と書いた場合、このファイルを開き、ストリームごとにバッファに読み込んで、このファイルをサーバーに送信します。これらのストリームは、ソケットを介してサーバー側に送信されます。
サーバー側: ソケット経由でコマンドをキャッチしようとします。次に、コマンドが有効なコマンドかどうかをテストします。たとえば、put コマンドの場合、クライアントからのストリームをソケット経由で読み取ります (読み取り)。次に、ファイルを開き、これらのストリームを書き込みます。
ここでの問題は、例としての put コマンドの場合 (ただし、get コマンドでも同じです)、最初の反復ではすべて問題ありません。ファイルがコピーされ、プログラムは正常に表示されます。ただし、2 回目の反復 (つまり、クライアント ターミナルで 2 番目にコマンドを入力するとき) では、ファイルがサーバー側にコピーされ、セグメンテーション違反が両側 (サーバーとクライアント) に表示されます。このセグメンテーション違反がどこから来ているのかを理解しようとしたところ、プログラムは fclose 関数で停止することがわかりました。なぜだか理解できなかった?何か助けはありますか?
matlab - matlab がテキスト ファイルに書き込めません
ubuntu 13.10で次のmatlabコードを使用して、テキストファイル「result.txt」に書き込もうとしています
ファイルのパーミッションを 777 に変更しましたが、何も起こりません。
3行目を次のように変更しました
うまくいきましたが、今は次のように変更しました
最初はうまくいきましたが、修正した後は申し訳ありません
ファイルは変更されていません。
c - fclose() の後に fwrite() が成功した
fwrite()
ストリームを閉じた後に成功する奇妙な動作に遭遇しましたが、ファイルは失敗fclose()
として上書きされません。fflush()
私のコードは次のとおりです。
次の出力が得られます。
fwrite()
ストリームが閉じられたときにどのように成功できますか? fwrite()
閉じたストリームに書き込みできますか? 説明していただけますか?
php - PHPを使用してCSVファイルをフィルタリングする
ftp 経由で 1 日に 2 回配信される csv ファイルがあります。このファイルを開くためにphpファイルを作成し、カテゴリ列でフィルタリングし、特定の用語/用語を含まない行を削除してからファイルを保存しようとしています。
私はインターネットで見つけたコードのスニペットの多くのバリエーションを試しましたが、それを機能させる方法を一生理解することはできません.
この質問で見つかったコードのバリアントを使用してみましたが、私のシナリオでは機能しませんでした
PHPを使用して単語またはテキストでcsvファイルをフィルタリングします
私が編集しようとしているcsvファイルがここにあるのに役立つ場合: http://accurateav.co.uk/sahara/saharafeed.csv
これは、Casio カテゴリの製品のみを表示するようにカテゴリをフィルタリングするためにこれまで使用してきたコードですが、スクリプトを実行すると、casio カテゴリに多数の製品があるにもかかわらず結果が表示されません。
php - file_put_contents が機能しなくなった
FTP サーバーに接続し、ファイルの内容を読み取り、小さな変更を加え、元のファイルを上書きする PHP コードがあります。
次のようになります。
本当の問題は、「file_put_contents」が長い間機能していたことですが、現在は機能していません。それが今何をするかは奇妙です:それはサーバーから元のファイルを削除します..また、私がそれを次のように変更している場合:
file_put_contents($new_ftp_file, $file_content);
私が知っていることから、新しいファイルを作成してコンテンツを入れる必要がありますが、まったく作成しません。
私が使用しているホスティング サービスは、数日前に PHP のバージョンが変更されました。以前のバージョンは覚えていませんが、現在は 5.2.17 です。
ありがとう!:)
いくつかの変更
私はこの作品を見つけました:http://www.php.net/manual/en/function.file-put-contents.php#86864 「file_put_contents」と同じですが、foen、fwrite、およびfcloseを使用しています(私は彼の例を送ったので結果の..)。彼の関数は、ファイルを「fopen」できなかった場合は「false」を返し、成功した場合は「bytes」を返します。私は「false」を取得しました:/これは、次のことさえできなかったことを意味します:
同じファイルアドレスの「file_get_contents」は機能していますが。
読み取りは機能しています (ただし、$filename を取得してクライアント FTP で自分で使用すると、機能します):
私のホスティング(アクションを実行する)の「open base_dir」はfalseに設定されていますが、ターゲットホスティング(ターゲットファイルを持つ)はtrueに設定されています。
新しいコンテンツを新しいファイルに保存するというアイデアがあったので、次のようなことを試しました。
問題は、それらのどれも実際に機能しないことです。スクリプトが使用しているのと同じ資格情報を使用して FTP アドレスにログインしましたが、新しいファイルが見つかりません。まったく作成されていません。(念のため、"$new_ftp_file" は存在しないファイルへのパスであるため、"fopen" の "w" モードで作成する必要があります)。
c++ - すでに fclose されているファイルを fclose する
私のプログラムでは、すでに閉じているファイルを閉じることがあります。fclose
既に閉じているファイルに対してを実行するとどうなりますか?
それができない場合、ファイルが閉じているか開いているかを知る方法はありますか?
c - glibc: 無効なポインタに対する fclose() が pthread_once() でハングする
glibc で奇妙な動作が見られます。コードには、ランダムなポインタをfclose()に渡すというバグがありました。この時点でクラッシュすると予想していましたが、代わりにpthread_once()でハングし、以下のバックトレースが発生します。プログラムはスレッドを使用しません。
これはglibc-2.17-20.fc19.x86_64を使用する Fedora 19 であり、プログラムは を使用して systemd から開始されるため、 __libc_message()がエラー メッセージを出力するStandardError=null
場所がありません。
コードを修正しましたが、これは glibc のバグによるものですか?