問題タブ [ftell]
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 - LibXML2 + プル パーサー (stax) : イベントのストリーム位置 (ftell) ?
インデックスを作成し、後で巨大な xml ファイルの特定の部分にアクセスしたいので、いくつかの「startElement」イベントのオフセット( ftell
... ) を取得する必要があります。
libxml2 ( http://www.xmlsoft.org/xmlreader.html )のプル パーサー ( stax ) インターフェイスを使用すると、 libxml2を使用してイベントのストリームでオフセットを取得できますか?
php - php 関数の ftell の出力
これが私のコードです:
結果は以下のとおりです。
Content-Length は私のものと同じではないかもしれません - 518264、コードを実行すると動的に変更されますが、議論には関係ありません。結果が次のようにならないのはなぜですか?
fgets と ftell および fseek 関数でのファイル ポインタの動作について説明してください。
c - fseek を使用すると、ファイルポインタが EOF に向かってジャンプします
ファイルから1行を読み取って、読み取ったばかりの行の先頭に戻ろうとしています:
しかし、fseek の直後に、fp が EOF に向かってジャンプすることがわかります。fp を pos に保存されている位置に戻したいです。プログラムのどこにも他の fp は宣言されていません。
デバッグして値を確認したので、fp が EOF に達することはわかっています。
私はWindows 10を使用しています。
c - ファイルサイズの表示 [C]
ポートに接続された別のソケットにテキスト ファイルまたは画像ファイルを送信する簡単なソケット プログラムを作成しています。ただし、ファイルのサイズもクライアントソケットに送信して、受信するバイト数を認識したいと考えています。
また、ファイル自体の代わりに特定のバイト数を送信できるものを実装したいと考えています。たとえば、送信したいファイルが 14,003 バイトで、400 バイトを送信したい場合、400 バイトしか送信されません。
私はこのようなものを実装しています:
offset
sendSize
ファイルに 40 バイトを入力し、残りのバイトを他のプログラムに送信します。
0
の代わりにの出力が得られ5
ます。この背後にある理由はありますか?
c - ftellがファイルポインタの値として-1を出力するのはなぜですか? そして、errno が「INVALID ARGUMENT」を出力するのはなぜですか?
ユーザーの情報をファイルにロードして保存するプロジェクトに、これらの2つの機能があります。各ユーザーは、ファイルの新しい行に保存されます。私の問題は、ftell(f) を使用しようとするとプログラムがクラッシュすることです。ftell(f) を出力すると、fopen() でファイルを開いた後に -1 が出力されます。errno でエラーを確認しようとしましたが、fopen() の後に "NO ERROR" が出力されますが、fseek を使用してファイル ポインターの f 位置を変更すると "INVALID ARGUMENT" が出力されます。
私の問題は Load_File 関数にありますが、ファイルに正しく書き込むことを確認するために Save_File 関数も示しています。
c - fscanf はファイル ポインタを後方に移動しますか?
これらは私のファイル 'unsorted.txt' の内容です:
3 ロバート・ジャスティン・トランプ
これは私のコードです:
実行すると、次の出力が得られます。
-1
なぜ2番目のケースで戻ったのですか? 0
から1
右に移動する必要がありますか?
注: ファイルを開くことができます。なぜなら、最初の呼び出しで 0 を出力し、ファイルの最初の文字を開くことができないからです。