問題タブ [file-pointer]
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 - ファイル記述子とファイルポインタの違いは何ですか?
ファイル記述子とファイル ポインタの違いを知りたいです。
また、どのシナリオで一方を他方の代わりに使用しますか?
c - Cでファイルポインタの現在の行位置を見つける方法は?
ファイルポインタの現在の行位置を取得するにはどうすればよいですか?
linux - ファイル記述子を調べますか?
ファイル*の代わりに生のファイル記述子でftell()が行うこと(ファイル内の現在の位置を返す)を行う方法はありますか?lseek()を使用して生のファイル記述子を探すことができるので、あるべきだと思います。
fdopen()を使用して、ファイル記述子に対応するFILE *を作成できることはわかっていますが、そうはしません。
c - 'a+'モードでファイルを開く
次のコマンドを使用してファイルを開いた場合:
マニュアルページには次のように書かれています。
a +
読み取りと追加(ファイルの終わりへの書き込み)のために開きます。ファイルが存在しない場合は作成されます。読み取り用の最初のファイル位置はファイルの先頭ですが、出力は常にファイルの末尾に追加されます。
ではf1
、2つの別々のオフセットポインタがあります。1つは読み取り用で、もう1つは書き込み用ですか。
c - ファイルポインタを関数に渡し、ファイルが正しく読み取られない
ファイルが正しく渡されていないという私のコードの問題だと思います。入力は、1 2 3 の 3 行を含むファイルです。4 5 6; 7 8 9; 出力はセグメンテーション違反 (コアダンプ) であり、出力は最初の行 1 2 3 を出力するはずです。
perl - Perl でファイル ポインタを操作する方法
そのため、カレンダー ファイルを読み込んでファイルに日付を挿入していますが、日付を時系列のままにしたいと考えています。問題は、日付を入れる場所を見つけたときに発生します。ファイルは、挿入したいポイントをすでに過ぎています。
私が見ているカレンダーファイルは次のようになります。
私のコードは次のようになります。
ファイル内の前の場所を指す方法について何か提案はありますか?
c++ - 何も指していないファイル ポインタ (FILE*) はありますか?
何らかの理由で、何も指していないファイル ポインター (FILE*) が必要です。これは、それを fprintf 関数に渡すことができ、fprintf はファイル ポインターを無視できることを意味します。
例えば:
何も指していないファイル ポインタ (FILE*) はありますか?
c++ - ファイル内の番号をスキップするファイルポインタを進める
テキストファイル内の位置をジャンプできるかどうか疑問に思っていました。このファイルがあるとします。
32 ビット int の最大数よりも大きいため、3 番目の数値を読み込もうとすると、読み取れません。どうすれば4番目の数字にジャンプできますか?
c - Cファイルポインタ、stdinでの複数の読み取り
stdinのプログラムにメッセージ(たとえば、電子メールやその他の種類のメッセージ)が入る既存のプログラムがあります。stdinがFILE*であることは知っていますが、他にどのような特別な特性があるのかについて少し混乱しています。現在、プログラムにチェックを追加しようとしています。特定の行(たとえば、「hello」という単語)が含まれている場合は、メッセージの処理方法が異なります。問題は、ファイル内でその単語を検索する必要があることですが、プログラムの後半で元の場所を指すようにstdinが必要です。構造の概要は以下のとおりです。
現在:
別のチェックを追加したいのですが、メッセージ本文を検索する必要があります。そのようです:
これに伴う問題は、メッセージ本文を検索するには、ファイルポインタstdinに触れなければならないことです。ただし、2番目のifステートメントのメッセージを開いて読む必要がある場合(type ='m'の場合)、stdinは、プログラムの開始時に指していたのと同じ場所を指す必要があります。ポインターのコピーを作成しようとしましたが、それ自体を変更した場合にstdinも変更するコピーを作成することに成功しました。
メッセージを渡す方法を選択することはできません。メッセージはstdinにとどまる必要があります。stdin自体を変更せずに、stdinに着信するメッセージの実際の本文にアクセスするにはどうすればよいですか?基本的に、それからどのように読み取ることができ、メッセージの最初から別の関数も読み取ることができますか?