問題タブ [fseek]

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.

0 投票する
1 に答える
3075 参照

php - phpでサーバーに配置されたビデオファイルを読み取る方法-ビデオファイルの名前にはhttpラッパーが含まれています

次のコードを使用していますが、警告が表示されfseek、0ではなく-1が返されます。

ファイルは確実に開かれますが、fseek機能しません。サーバーからビデオを読み取る他の方法はありますか?

以下はエラーメッセージです

0 投票する
3 に答える
13986 参照

c - 「a+b」モードで開かれた場合、fseek() はファイル ポインタをファイルの先頭に移動しますか?

「a+b」モードを使用してファイルを開きたいです。つまり、存在しない場合は自動的に作成されますが、存在する場合は上書きしたくありません。ファイルを読み書きできるようにしたい。

ファイルはバイナリであり、特定のレコードを保存したいと考えてstructいます。だから私は欲しいfseek()レコードにやりたいと思って、それを使ってレコードを保存しfwrite()ます。

コードは次のようになります (MyRecordは aにtypedefstructはファイル名に):FILENAME#define

ただし、このコードは、0 に設定した場合でも、レコードをファイルの最後に追加するだけです。追加モード で動作しposないのはなぜですか?fseek()SEEK_SET

「r + b」で簡単に開くことができ、失敗した場合は「wb」で開くことができることはわかっていますが、これが機能しない理由fseek()SEEK_SET、最後にファイルポインターが残っている理由を知りたいです。この動作が文書化されている場所への参照は大歓迎です (何も見つからなかったか、間違ったキーワードを使用しているため)。

0 投票する
2 に答える
4088 参照

c - パイプから読み取るときにポータブル C で前方にシークする方法

fseek()パイプでは機能しないため、前方シークをシミュレートするためにどのような方法が存在しますか? 素朴なアプローチはfread()、メモリ バッファに読み込まれた内容を使用して破棄することです。巨大なバッファを回避するための巨大なシークでは、バッファの一部だけを使用して、最終的な読み取りで同じバッファを何度も使用します。

しかし、これが唯一のアプローチですか?バッファと潜在的な複数読み取りを回避する別の方法はありますか?

0 投票する
3 に答える
313 参照

c - ファイル内の効率的なランダムアクセス? [ハ]

私は、ファイルとそれらに現れる単語 (頻度) のインデックスを保持するために使用するテキスト ファイルを持っています。ファイルをメモリに読み込み、単語を保存して検索できるようにする必要があります。ファイルは次のようにフォーマットされます。

問題は、このインデックス ファイルが非常に大きくなる可能性があり、すべてが一度にメモリに収まらないことです。私の解決策は、一度に HashTable にそれらのほんの一握りだけを格納し、別の単語のデータを取得する必要があるときに、古い単語を追い出し、ファイルから新しい単語のデータを解析することです。

Cでこれを効率的に達成するにはどうすればよいですか? 特定のポイントに到達したら、fseekと巻き戻しで何かをしなければならないと思っていました。

ありがとう、
マイク

0 投票する
5 に答える
18921 参照

c - fseekとftellを使用してファイルのサイズを判別することには脆弱性がありますか?

fseekとftellを使用してファイルのサイズを決定する方法を示す投稿を読みました。

この手法を使用しようとしていましたが、潜在的な脆弱性を説明するこのリンクに遭遇しました。

リンクでは、代わりにfstatを使用することを推奨しています。誰かがこれについてコメントできますか?

0 投票する
2 に答える
6908 参照

php - 特定の位置からファイルに追加するPHP

PHPでは、テキストファイルを開いて追加しています。ただし、ファイルの末尾の前に 3 文字を追加する必要があります。つまり、ファイル内の特定の場所から追加/書き込みする必要があります。

誰でも助けることができますか?

よろしくルーベン

0 投票する
3 に答える
1971 参照

c - fseek() が機能しない

a と r+ を使用してファイルを開きましたが、fseek と ftell を使用すると、ファイル ポインターは常に 0 になります。私のファイルは次のようになります。

そして、2つの間に別の行を追加したいのですが、最後の行の後に最後に追加されています。別のフォーラムの誰かが、ファイルを追加で開くと、ポインタは常にゼロであり、r+ で開く必要があり、それが機能しない場合は「完全なデータを読み取ってから、データを変数に挿入し、書き直して。」しかし、それが何を意味するのかわかりません。

ファイルの途中に数字を挿入するのを手伝ってくれる人はいますか?

ありがとう!

このようなものは機能しますか?データを転送するには?

0 投票する
2 に答える
193 参照

c - fseek()がデータの重複を引き起こしている

fseek関数とfread関数を使用してファイルの指定されたチャンクを読み取り、それを別のファイルに書き込みます。何らかの理由で、宛先ファイルに書き込まれたすべてのチャンク間で約20バイトのオーバーラップが発生します。

誰か、このゴミの出所を特定するのを手伝ってくれませんか?これは間違いなくfseek関数が原因ですが、理由がわかりません。

0 投票する
3 に答える
3534 参照

matlab - MATLAB で末尾から始まるファイルの読み取り

ファイルの最後から読み取りを開始するMATLABでファイルを開いて読み取る方法を誰かが知っているかどうか疑問に思っていました。ファイルは常に更新されており (読み取り間の速度は一定ではありません)、毎回ファイルの最後の 6 行を読み取りたいと考えています。

また、同じ行を 2 回読み直さないことを確認するテストも含めます。各行は次のようにフォーマットされます (各変数は浮動小数点数です)。

ファイルの最後の行に位置を変更するために fseek を使用しようとしていましたが、これにより、ファイルの最後の行を読み取ることしかできず、特定のバイト数を指定しない限り、ファイルを逆方向​​に読み取ることはできません。正確なバイト数はわかりません。

0 投票する
3 に答える
10548 参照

c++ - fseek が大きなファイルをサポートするようになりました

少なくとも私の実装では、fseek は現在、fseek64、lseek、またはいくつかの奇妙なコンパイラ マクロを使用せずに、大きなファイルを自然にサポートしているようです。

これはいつ起こったのですか?

上記のコードは、1 ~ 10^9 のエントリを含む大きなファイルをバイナリ size_t 形式で書き込みます。次に、最後の 10 エントリを書き込み、ファイルの先頭からシークし、ファイルの最後からシークします。