問題タブ [streamwriter]

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 投票する
5 に答える
2763 参照

c# - C#クラスライブラリ:StreamWriterがsystem32フォルダーに書き込んでいます

ASP.NETWebサービスで使用するISPサーバーに展開されているクラスライブラリがあります。エラーを追跡したいのですが、この場合、Windowsイベントログにアクセスできません。そのため、StreamWriterクラスを使用してtxtファイルに書き込むと思いました。問題は、絶対パスを指定せず、C:\ Windows \ System32に書き込もうとするファイル名だけを指定した場合、それは私には良くありません。データディレクトリまたはアプリケーションルートを使用するように指示するにはどうすればよいですか?何かご意見は?

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

streamwriter - ファイルからのデータの読み取りが破損する

TXTファイルからデータを読み取っていますが、既存のデータの一部を置き換えてから、ファイルに書き戻す必要があります。問題は、ファイルにテキストを書き戻すときに破損する特殊文字がファイルにあることです。

たとえば、ファイル「foo.txt」に次の「€rdrf+À[HIGH]」という文字列があります。私のアプリケーションは、テキストを文字列に読み込み、その行を調べて[HIGH]を値に置き換えてから、ファイルに書き戻します。問題は、特殊なテキスト文字が破損することです。

コードベースの短縮バージョンは次のとおりです。

特殊なテキスト文字を破損せずにファイルから読み取るにはどうすればよいですか?

ありがとうジェイ

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

c# - フォームの終了時に Stream Read と Stream Writer を閉じる

やあみんな、ここでちょっとした問題を抱えています。

そのため、ファイルをロードするロード ボタンと、ファイルを保存する保存ボタンがあります。プログラムを閉じる終了ボタンもあります。私が助けを必要としているのは、プログラムを閉じるときに、閉じられていない StreamReader または StreamWriter があるかどうかを確認することです。

私がこれまでに持っているものは次のとおりです。上部で、私はこれらの人を宣言します

私のロードボタンはこのように見えます

そして、私の保存ボタンは次のようになります

私の終了ボタンは次のようになります

私がやろうとしたのは、bool isDirtyBoolean を一番上に設定し、Stream Reader または Writer が閉じたときに bool 値を true に設定することでした。そのため、アプリを終了すると、まだ false に設定されている場合は、とにかくそれらを閉じます。

しかし、 isDirtyBoolean の値はこれらのプライベートな無効ボタンであり、それらにアクセスできないため、これは機能しません。

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

c# - c# streamwriter で動的なファイル名を作成できますか?

私は、タイムスタンプで名前が付けられたファイルにプログラムを書き込もうとしていました。基本的に、タイムスタンプを文字列値に保存して、そのタイムスタンプに基づいてファイルを作成したかったのです。たとえば、「フライト マニフェスト 10/14/2010 1:38:29 AM.txt」

これを行う正しい方法は何ですか?

私はこのようなことを試しました:

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

vb.net - テキストファイルへの排他的アクセス、読み取りおよび上書き

テキスト ファイルを開き、他のプロセスがそのファイルに書き込めないようにしたいと考えています。次の FileStream を使用してこれを実行できることを理解しています。

このようにアクセスしたら、すべての行を読み取る必要があり (StreamReader(fs) を使用します)、ファイルに書き込む必要があります (StreamWriter(fs) を使用します)。

ここでの問題は、ファイル パスの代わりにファイル ストリームをパラメーターとして使用すると、StreamWriter で追加モードを false に設定できない (ファイル内のすべてのテキストを上書きできる) ことです。したがって、StreamWriter で書き込まれたすべてのテキストは、不要なテキストに追加されます。ファイル ストリームの代わりにパラメータとしてファイル パス (append を false に設定できる) で StreamWriter を使用すると、FileStream FileShare のためにロックアウトされます。ファイルへの読み取りと書き込みの排他的アクセスを保持しながら、既存のテキストを上書きできるようにするにはどうすればよいですか (追加モード false)。

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

sockets - サーバーからファイルのコンテンツを読み取り、ソケット C# を介してクライアントに送信する

私はここでテキストファイルの内容をサーバーで送信し、それをクライアントに送信しようとしています

これはサーバーです

サーバーから読み取るクライアントの部分はこれです

コードを実行すると、エラーはまったく発生しませんが、クライアントがスタックし、サーバーを停止すると、ファイルの内容が表示されます.,ところで、そのGUIアプリケーション

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

c# - ストリームライターの基本的な理解

こんにちは、

私の質問は、StreamWriter を使用してデータを書き込むことの非常に基本的な理解に関係しています。次のコードを検討する場合:

ライター オブジェクトがファイル名で初期化されると、それが持っているのはファイルへのポインターだけです。

しかし、文字列を writer オブジェクトに書き込むとき、実際にはファイル全体をロードし、その内容を読み取り、文字列を最後に追加してハンドルを閉じますか?

ばかげた質問ではないことを願っています。これを尋ねるのは、おそらく 0.5 秒ごとに頻繁にファイルに書き込みを行うアプリケーションに出くわしたためで、ファイル サイズは約 1 GB に増加しましたが、ファイルへの書き込みは引き続き行われました。(ロギング)

これにより、CPU 使用率が 100% になる可能性があると思いますか?

私の質問が不明な場合はお知らせください。

前もって感謝します。

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

.net - VB.NETStreamWriter式が必要です

私はこの1時間かそこらの間これを見てきました。誰かがこれの何が問題なのか教えてもらえますか?

これはコンパイラエラーBC30201: Expression expected.ですそれを引き起こした行はDim sw行です。

助けてくれてありがとう。

ナラム

0 投票する
4 に答える
4055 参照

c# - を使用せずにファイルを閉じる

あるファイルストリームからデータを読み取り、別のファイルストリームに書き込むクラスがあります。closeFiles()での処理が終了した後、ストリームを閉じることが心配です。

一方のストリームの破棄が例外をスローして、もう一方のストリームの破棄が呼び出されないようにする可能性をどのように処理しますか?

私は近くに電話して小川に処分するべきですか、それとも1つだけですか?

ストリームの破棄からエラーをキャッチし、lastOperation()に示すようにファイルの移動と削除を続行するとどうなりますか?

完璧な世界では、c ++スタイルの初期化リストでusingステートメントを使用したいのですが、c#ではそれが不可能であると確信しています。

編集:迅速な対応の人に感謝します。したがって、私がすべきことは、IDisposableから派生し、コンストラクターを変更して、次のような2つの破棄メソッドを追加することです。

これは基本的に私がしていることです:

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

c# - StreamReaderとの同時ファイルアクセスの場合に発生した例外

StreamWriterを使用した同時ファイルアクセスの処理について話している投稿を見つけました。

問題は、回答がファイルにアクセスされているシナリオではなく、複数のプロセスを管理していることです。

すぐにそれを伝えましょう:

  • 複数のアプリケーションがあります
  • データベースに一元化されたロギングシステムが必要です
  • データベースに障害が発生した場合、ファイルシステムログでフォールバックする必要があります

複数のアプリケーション(プロセス)がそのファイルに書き込もうとする、既知の同時実行シナリオがあります。これは、少し遅れて書き込みを再試行することで管理できます。ただし、セキュリティエラーまたはファイル名構文エラーの場合は、再試行したくありません。

コードはここにあります:

私の唯一の質問は、同時実行書き込みの場合に発生する例外のタイプです。私はすでに物事が違ったやり方でできることを知っています。いくつかの考慮事項を追加しましょう:

  • いいえ、そのシナリオではNLogを使用したくありません
  • はい、インプロセス同時実行のためにIOC+Mutexで同時実行を処理します
  • はい、本当にすべてのログを同じファイルに書き込みたいです