問題タブ [fileinfo]
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# - .NET で FileInfo.CopyTo() を使用してファイル コピーの進行状況を表示できますか?
ファイル、ディレクトリ、再帰的なサブディレクトリなどをコピーするコピー ユーティリティを C# (.NET 2.0 Framework) で作成しました。プログラムには、コピー中の現在のファイル、現在のファイル番号 (シーケンス)、総数を示す GUI があります。コピーするファイルの数と、コピー操作の完了率。現在のファイル/合計ファイルに基づく進行状況バーもあります。
私の問題は、大きなファイルのコピーに関連しています。大きなファイルの全体的なコピーの進行状況を示す方法を見つけることができませんでした (FileInfo.CopyTo メソッドを利用する現在のクラス構造を使用しています)。回避策として、ファイル コピー操作と GUI 表示をそれぞれのスレッドに分離し、作業が行われていることを示す視覚的な合図を設定しました。少なくともユーザーは、プログラムがフリーズしておらず、まだファイルをコピーしていることを認識しています。
合計バイト数に基づいて進行状況を表示したり、現在のファイルからコピーされた合計バイト数を示す FileInfo.CopyTo メソッドから発火するある種のイベントを作成したりできると便利です。
私は FileInfo.Length プロパティを認識しているので、MacGuyver にこれに基づいて独自のイベントを作成し、GUI 側で更新を読み取るハンドラーを持つ方法があると確信しています (おそらく FileInfo.Length のチェックに基づいています)。ある種のタイマーを使用した宛先オブジェクトの長さプロパティ?)。
私が見落としているこれを行う方法を知っている人はいますか。それを避けることができれば、ストリームを介してバイトをコピーしてそのように追跡するようにクラスを書き直したくありません(ただし、そのルートに行き詰まる可能性があると考えています)。
PS - 私は今のところ .NET 2.0 フレームワークに固執しているので、>= 3.0 でのみ利用可能な機能を必要とするソリューションは、私にとって選択肢ではありません。
PPS - 私は、c# だけでなく、さまざまな .NET 言語のソリューションに対してオープンです。
c# - 最終アクセス時刻が正しくありません
FileInfo オブジェクトを作成してその lastaccesstime プロパティにアクセスするたびに、常に数分遅れます。ファイル プロパティ ウィンドウは一定のままですが、アプリケーションは通常、プロパティ ウィンドウ時間から数分後に表示されます。
また、ファイルをcmdウィンドウにドラッグしてファイル名を引数として渡すと、ほとんどの場合アクセス時間が更新されますが、常にではありません。
何が原因でしょうか?
以下に例を示します。
代替テキスト http://img407.imageshack.us/img407/4728/propertiesox6.png 代替テキスト http://img380.imageshack.us/img380/7752/appgt0.png
c# - C# で C++ exe からファイル バージョン情報を取得するにはどうすればよいですか?
C# プログラムから C++ で作成された exe ファイルからファイル バージョン情報を取得する必要があります。
Assembly.LoadFile(fullpath).GetName().Version を使用すると、BadImageFormatException が発生します。
誰でも助けることができますか?
乾杯、
ダン
.net - ファイルの読み取り専用属性の変更
ファイルの読み取り専用フラグを変更できないようです。VistaとXPで同じ結果を試したので、UAC関連の問題ではないと思います。
しかし、私がしたことは何もうまくいかないようです。以下のサンプルを参照してください。誰かが私が間違っていることを教えてもらえますか?
vb.net - MP3プレーヤー/USBストレージデバイスへのアクセス
USBストレージデバイスにアクセスしようとしていますが、デバイスは[コンピューター/ドライブ]セクションに表示されていますが、ドライブ文字が割り当てられていません。そのため、USBストレージデバイスと書き込み可能なCDを見つける方法で説明されているように、接続されたドライブを繰り返し処理します。 / DVDドライブ(C#)、表示されません。ドライブ(プロパティ)上のファイルから「場所」を取得しましたCOMPUTER/Q1/Datacasts
が、FileInfoオブジェクトに渡すと機能しません(ネットワークドライブが見つかりません)。どちらの方向に進むかで少し損失があります
c# - メソッドにファイル名を渡す場合、FileInfo とプレーン ファイル名のどちらを使用する必要がありますか?
まあ、タイトルはそれをすべて言います。ファイル名をメソッドに渡す場合、FileInfo オブジェクトまたはプレーン ファイル名 (文字列) を使用する必要がありますか? なぜ私はどちらかを好むのですか?
私の同僚の中には、次のようなメソッドを書くのが好きな人もいます:
- void Export(FileInfo fileInfo)
それはより良いですか:
- void エクスポート (文字列ファイル名)
ありがとう!
c# - FileInfo コンパクト フレームワーク 3.5 - ファイルが見つかりません
FileInfo クラスを使用しています。ただし、ファイル情報はファイルを見つけることができません。
ファイルは log4Net.config と呼ばれ、プロジェクトに追加しました。プロパティを build action = 'Content' および copy output = 'copy always' に設定しました
次のコードを実行すると:
Exists は常に false です。例外は次のとおりです。ファイル 'Log4Net.config' が見つかりませんでした。
PDA を確認したところ、Log4Net.config が PDA にコピーされており、実行可能ファイルと同じディレクトリにあります。なぜそれが見つからないのか分かりません。
configure メソッドが FileInfo をパラメータとして期待する追加情報です。
私は何か間違ったことをしていますか?
アドバイスありがとうございました。
スティーブ
c# - FileInfoコンストラクターの「パスが有効な形式ではない」というメッセージが表示されるのはなぜですか?
次のコードを使用して、C#でFileInfoオブジェクトを作成しています。
また、お客様からは、スローされるメッセージとして「パスは正当な形式ではありません」というArgumentExceptionが表示されるとの報告があります。これを再現することはできません。このエラーを確認するには、FileInfoコンストラクターにどの文字列を渡す必要があるのでしょうか。
c# - Fileinfo 最終アクセスのミリ秒が更新されない
メソッド monitorCallback() では、時間をテキスト ファイルに書き込みます。ファイルを書き込んだ後、ファイルの FileInfo を確認して印刷します。
次の結果が得られました。
なぜ時間が変わるのか理解できませんが、ミリ秒は固定されたままです
fileinfo - .NET の特定の File.IO オブジェクト (DirectoryInfo など) は、プログラムの終了後も参照されているリムーバブル デバイスを保持できますか
ソースと宛先のディレクトリとそのサブディレクトリのすべてのファイルを再帰的に処理し、lastwritetime を比較し、比較結果に基づいて宛先ディレクトリとの間でファイルをコピー/削除するプログラムを .NET で作成しました。
例えば。宛先ディレクトリはリムーバブル ドライブ (usb) 上のディレクトリです。プログラムを閉じた後でも、PC から USB ドライブを削除できません。USB を開いている他のプログラム (エクスプローラーなど) はなく、そのプログラムはタスク リストに表示されなくなります。
このプログラムは、次を使用して各ディレクトリとサブディレクトリの DirectoryInfo を取得することで機能します。
GetFiles を使用してすべてのファイルを取得します。
次に、foreach がすべてのファイルをループして、一部のファイルを除外するかどうかを確認します (RegEx を使用して複数のパターンが必要なため、手動で行います)。
正規表現フィルターに基づいて除外されていないファイルは、SortedList に追加されます。1 つはソース ディレクトリ用、もう 1 つは宛先ディレクトリ用です。
これは比較機能で使用されます。using パターンを使用して、ソース リストの列挙子と宛先リストの列挙子を作成します。
最後に、ファイルは次を使用してコピーまたは削除されます
プログラムを閉じた後でもUSBドライブへの参照を保持する、メモリ管理に関して見落としているものはありますか?