問題タブ [fputs]
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 - EBCDIC 文字配列を書き込むための fputs
EBCDIC 形式の文字配列があり、その配列をファイルに保存したい場合。fputs最初に別の形式に変換せずに文字配列を出力するために使用することを考えています。
質問)fputs EBCDICの使用は合法ですか? そうでない場合、出力する前に文字列を ASCII に変換する必要がありますか?
私はオンラインで検索しましたが、fputsEBCDIC データの出力に使用してはならないということは何も見つかりませんでした。
c - ファイルから文字配列への行の読み取り
私は C がまったく初めてで、テキスト ファイルから 3 行 (2 つの数字と数学記号) を読み取って結果を書き出す必要があるプログラムに取り組んでいます。たとえば、次のようになります。
テキスト ファイルは次のようになります。
私のプログラムは3行を読み取って、「1 * 4 = 4」などのように書き出せるはずです。
3行を読み取って画面に表示できるようになったので、2つの数字を1つの配列に、記号を別の配列に配置する必要があると考えました。問題は、配列に入力した数値が含まれているかどうかを確認しようとしたことと、出力に巨大な数値が含まれていることです。その理由はわかりません。
ここに私が書いたコードがあります:
どんな助けでも大歓迎です!事前に感謝します。さらに情報が必要な場合は、提供します。
c - C fput のソケット クライアント
サーバーに接続する次のクライアント コードがあります。
ソケットを介してメッセージを送信するたびに、サーバーはメッセージをクライアントにエコー バックします。ほとんどの場合は機能しますが、メッセージを数回繰り返した後、エコーが失敗し始めます。これが失敗する例です。
メッセージを入力してください: こんにちは! サーバーの応答: こんにちは!
メッセージを入力してください: どこから来ましたか? サーバーの応答: どこから来たの?
メッセージを入力してください: サーバーの返信: いいね!あなたは出身ですか?
メッセージを入力してください: そしてあなたは? サーバーリプレイ: そしてあなたは? あなたから?
そのため、どういうわけか、stdout バッファーなどにガベージを保持しているようです。私はそれが何であるかを本当に知りません。コードに何か問題がありますか、それとも fputs に関係する単純な修正ですか? (メッセージと server_reply 配列のサイズに関係があるのかもしれません)。
c - ファイルに \n を書き込むと、\r\n の組み合わせに変換されるのはなぜですか?
fputs() を使用して \n をファイルに書き込もうとすると、fputs() は \n を \r\n の組み合わせに変換し、fgets() を使用して同じ行を読み戻すと逆になるという本からこの概念を読みました。変換が発生するということは、\r\n を \n に逆変換することを意味します。この背後にある目的は何ですか?
c - fgets/fputs の実行時に最後の行が繰り返される
私は挿入を行っています。これは、元のファイルのすべてのデータと挿入される文字列を受け取るファイル、文字列、および新しいファイルを意味し、元のファイルを置き換えます。
たとえば、元のファイルは次のとおりです。
data.txt
文字列「改行」を挿入すると、次のようになります。
data_temp.txt --> 後で名前を変更したdata.txt
その目的で、次のコードがあります。
私の問題は基本的に、元のファイル、新しいファイルへの書き込みにあります。元のファイルの最後の行は、新しいファイルに複製されて表示されます。
与えられた例では:
data.txt
line5 (元のファイルの最後の行)は、新しいファイルで 2 回表示され、次に挿入される文字列です。
data_temp.txt --> 後で名前を変更したdata.txt
問題は、元のファイル (AKAwhile(!feof(data))ループ) の読み取り、EOF、fgets、または fputs のチェックにあると強く信じています。これを解決するアイデアはありますか?
c - C ファイルから文字列を取得する
ファイルから固定長 (10 文字と 32 文字) の 2 つの可変文字列を取得し、それらを変数として保存して、後でプログラムで渡し、新しいファイルに書き込みたいと考えています。ユーザー入力から新しいファイルにデータを書き込むことはできますが、データを見つけて使用するために保存する方法がわからないため、ユーザーが手動で42文字を入力してエラーのリスクを冒す必要はありません。文字列は内容が異なり、ファイル内の位置も異なる可能性がありますが、常に一定の文字列 "Serial Number =" の後に続きます。刺し傷が始まる既知のオフセット位置がある場合、これにより簡単になりますか? 私は fget または fread を考えていました...しかし、実際の例を得ることができません。
私は週末を通してそれを読んで読みましたが、あるファイルからデータを読み取り、別のファイルに挿入することで、望ましい結果が得られました。これはうまくいきますが、最善の方法ではないかもしれません。携帯電話から送信したため、ソースにアクセスできなかったため、誤ってタグ付けされた投稿について事前にお詫び申し上げます。すべての入力に感謝します。もっと歓迎します。自分が何をしているのかを理解したので、文書化しようとしました。
c - 2 つの別々の変数に書き込むために 2 つの別々の関数「fgets」を使用するにはどうすればよいですか?
私はコードを持っています:
最初は変数「テキスト」に書き込み、書き込みが成功した後、別の変数に書き込みたかったので、そのようにしました。ただし、代わりに、変数「テキスト」のみを記述できますが、変数「キー」は記述できず、テキストは間違った方法で表示されます。これを修正するにはどうすればよいですか? (下手な英語でごめんなさい)
php - Opera 11.50 ファイルの書き込み時のページ リロードの問題と Cookie、PHP セッション エラー
理解できない問題があります。
この問題は、Opera 11.50 ブラウザーでのみ発生します。ファイル関数に書き込むだけです。
fopen, LOCK_EX, fputs, LOCK_UN, fclose.
通常ページを開くと、すべて問題ありません。しかし、ページをリロードすると、文字列がファイルに複数回 (2 回、場合によっては 3 回) 書き込まれます。私がチェックしたところ、関数は一度だけ起動され、エコーは正しい文字列を返します。
また、更新時に、Opera は php セッション変数と Cookie を無視します。もちろん、セッション開始前にバッファを使用します。
他のブラウザでは、この問題は発生しません。
Cookieとブラウザの設定を確認しました。ブラウザも再インストール。新たにダウンロードしてインストールした Opera 11.50 を搭載した 2 台目の PC でも同じ問題が発生します。
何か案は?
ps:この関連トピックを読みましたが、私の問題に対する答えが見つかりませんでした。
いくつかのコードがあります:
通常、ページに入ると、すべて問題ありません。リロード時に「test!」とエコーします。は実行されませんが、ファイルには "What?!" という 2 つのエントリが表示されます。この関数のみがそのファイルに出力されます。