[解決済み] C#のネストされたusingステートメント
2022-03-16 04:04:39
質問
私はあるプロジェクトに取り組んでいます。私は2つのファイルの内容を比較し、それらが互いに正確に一致するかどうかを確認する必要があります。
多くのエラーチェックと検証の前に、私の最初のドラフトは。
DirectoryInfo di = new DirectoryInfo(Environment.CurrentDirectory + "\\TestArea\\");
FileInfo[] files = di.GetFiles(filename + ".*");
FileInfo outputFile = files.Where(f => f.Extension == ".out").Single<FileInfo>();
FileInfo expectedFile = files.Where(f => f.Extension == ".exp").Single <FileInfo>();
using (StreamReader outFile = new StreamReader(outputFile.OpenRead()))
{
using (StreamReader expFile = new StreamReader(expectedFile.OpenRead()))
{
while (!(outFile.EndOfStream || expFile.EndOfStream))
{
if (outFile.ReadLine() != expFile.ReadLine())
{
return false;
}
}
return (outFile.EndOfStream && expFile.EndOfStream);
}
}
を入れ子にしているのは少し変な気がします。
using
ステートメントを使用します。
何か良い方法はないでしょうか?
どのように解決するのですか?
好ましい方法は、開始波括弧だけを置くことです。
{
の後、最後の
using
ステートメントを、次のように使用します。
using (StreamReader outFile = new StreamReader(outputFile.OpenRead()))
using (StreamReader expFile = new StreamReader(expectedFile.OpenRead()))
{
///...
}
関連
-
[解決済み] エンティティタイプ ApplicationUser は、現在のコンテキストのモデルの一部ではありません。
-
[解決済み】ソケットのアドレス(プロトコル/ネットワークアドレス/ポート)は、通常1つしか使用できない?
-
[解決済み] リフレクションを使用して文字列からプロパティ値を取得する
-
[解決済み] LINQを使用してList<T>から要素を削除する
-
[解決済み] usingディレクティブはネームスペースの内側と外側のどちらを使うべきですか?
-
[解決済み] C#でメソッドをパラメータとして渡す
-
[解決済み] C#を使用して.NETで現在のユーザー名を取得する方法は?
-
[解決済み】<input type="file">でファイル形式を制限する?
-
[解決済み】WCFクライアント `using` ブロックの問題に対する最良の回避策は何ですか?
-
[解決済み】C#の "using "の使い方は?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Visual studio 2019がデバッグ時にフリーズする件
-
[解決済み】Swashbuckle/Swagger + ASP.Net Core: "Failed to load API definition" (API定義の読み込みに失敗しました
-
[解決済み】Unity 「関連するスクリプトを読み込むことができません」「Win32Exception: システムは指定されたファイルを見つけることができません"
-
[解決済み】Entity FrameworkからのSqlException - セッション内で他のスレッドが動作しているため、新しいトランザクションは許可されません。
-
[解決済み】5.7.57 SMTP - MAIL FROMエラー時に匿名メールを送信するためにクライアントが認証されない
-
[解決済み】2年前のMSDateを把握する【クローズド
-
[解決済み】インデックスが範囲外でした。コレクションパラメータname:indexのサイズより小さく、非負でなければなりません。
-
[解決済み】画像のペイントにTextureBrushを使用する方法
-
[解決済み】「namespace」なのに「type」のように使われる。
-
[解決済み】複数の変数を持つステートメントを使用する【重複あり