- ベストアンサー
ファイルのタイムスタンプを取得する方法
こんにちは。 WindowsNT4.0で、フォルダにあるファイルの タイムスタンプを秒まで取得したいのですが どのようにすればよいのでしょうか? dirコマンドだと時分しか出ないので困ってしまいました。 プログラミングが必要だとすれば、どのような コードをかけばよいのでしょうか? できればC言語で。 宜しくお願いいたします。
- labrakun
- お礼率87% (474/540)
- Windows系OS
- 回答数2
- ありがとう数6
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
1.FindFirstFile()、FindNextFile()を使ってファイルを列挙。同時にタイムスタンプも取得可能。 http://www14.big.or.jp/~ken1/tech/tech5.html 2.FileTimeToLocalFileTime()でUTCからローカル時刻に変更 3.FileTimeToSystemTime()でシステムの時間形式に変更。 こんな感じかと。 ただし、NT4.0の場合適切なタイムゾーンが設定されていないと9時間ずれる場合があるので、そのときは2の処理を省略してください。
その他の回答 (1)
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
できればC言語でということですが、VBScriptを使うのが簡単です。 以下のプログラムを適当な名前(filesDate.vbsとか)で保存して、取得したいフォルダのコマンドプロンプトで cscript filesDate.vbs とします。 ----------------------------------------------- Dim fso, folder, x Dim wsho, ret Set fso = WScript.CreateObject("Scripting.FileSystemObject") Set folder = fso.GetFolder(".") Set wsho = WScript.CreateObject("WScript.Shell") For Each x in folder.files WScript.Echo x.Name & " " & x.DateLastModified next
お礼
BLUEPIXYさん、ありがとうございました。 この方法でもやってみたらうまくいきました。 どうもありがとうございました。
関連するQ&A
- ファイル・タイムスタンプの取得
ExcelVBAを使用しています。 FileDateTime()を使用すると、起動時の日時が取得されます・ これは、Excelを起動すると、 (1)ファイル・タイムスタンプが起動した時の時間に置き換わる。 (2)保存なしで終了すると、起動前の元のタイムスタンプに戻る、 の為と思われます。 起動前の元のタイムスタンプを取得する方法がありましたら ご教示よろしくお願いします。
- ベストアンサー
- Visual Basic
- ファイルのタイムスタンプの取得
UNIXにて プログラムを組まないで、ファイルのタイムスタンプの 取得方法がありますか?ご存知の方は教えてください。 以上、宜しくお願いします。
- 締切済み
- その他(OS)
- WSHを使ってファイルタイムスタンプを取得したいのですが
WSHを使ってファイルタイムスタンプを取得したいのですが Set src = fso.GetFile(
- ベストアンサー
- その他(プログラミング・開発)
- タイムスタンプを変えないでコピーする方法
ホームネットワーク内のPC間で、データをコピーした際、ファイルのタイムスタンプは不変なんですが、 フォルダーのタイムスタンプが変わってしまいます(コピーした時点のタイムスタンプになってしまいます)。 フォルダーのタイムスタンプを変えないようにして、コピーすることは可能でしょうか? ご教示よろしくお願い致します。
- ベストアンサー
- その他(Windows)
- c言語でファイルのタイムスタンプを書き換えたい
Linuxの環境でc言語を利用してファイルのアクセス日時と更新日時を指定したモノに書き換える方法はないでしょうか stat関数を利用して取得する方法まではわかったのですが書き換える方法がわかりません それともファイルのタイムスタンプはユーザーが勝手に書き換える事ができないものだったりするのですか?
- ベストアンサー
- C・C++・C#
- PHPでタイムスタンプ以外の更新日を取得する方法は
filemtimeで更新日を取得できますが、これはタイムスタンプですよね。 2038年問題を考えると、タイムスタンプを使うものは極力避けたいと思っております。 DateTimeみたいに、タイムスタンプ以外のもので、ファイルの更新日を取得できるものはありませんか?
- ベストアンサー
- PHP
- ファイルアップロード時のタイムスタンプ
PHPで画像ファイルをアップロードした際、 ファイルのタイムスタンプが更新されてしまいます。 あとで、アップされたファイルのタイムスタンプをみて処理させたいのですが 、タイムスタンプ(作成日時、更新日時)を更新させないでアップロードする方法はありますでしょうか。 アップロードする前のタイムスタンプをあらかじめ取得し、DBなどに登録しておいたほうがいいのかもしれませんが、できれば画像ファイルのタイムスタンプを更新させないでアップロードしたいです。
- ベストアンサー
- PHP
- FTPでのディレクトリのアップロード方法とタイムスタンプ
(1)FTPでのディレクトリのアップロード方法 DOS窓から、FTPコマンドで、FTPサーバーにログインし、putやmputでファイルをアップロードする際に、ディレクトリをアップロードする方法をご存知の方がいらっしゃれば教えてください。 サブフォルダ以下すべて、ディレクトリ構成ごとアップロードしたいと考えています。FFFTP等のツールを使わずにコマンドラインからやりたいと思っています。 (2)FTP時のタイムスタンプ WindowsのクライアントPCから、UNIXのサーバーにファイルをアップロードすると、タイムスタンプがファイルをアップロードした時間に置き換わってしまい、もともとのタイムスタンプが書き換えられてしまいます。タイムスタンプをそのままにしてアップロードすることが可能であれば、教えてください。できれば、コマンドラインからがいいですが、不可能ならFFFTP等のツールを使用しようと思っています。 よろしくお願い致します。
- 締切済み
- その他(ITシステム運用・管理)
- Windowsのファイル・フォルダのタイムスタンプ
Windows10ですが、ファイルやフォルダを作成してもすぐに忘れてしまうことがあります。その理由としてあるディレクトリ(フォルダ)\Aのサブのディレクトリ\A\Bを変更したりしても元のフォルダ\Aのタイムスタンプが変更されないということがあるように思います。ディレクトリの深いところで何らかの更新をするとそれが上のディレクトリのタイムスタンプを更新するというような設定はないのでしょうか。 技術的に難しい感じはしないのですが、そうしない理由は何でしょうか。フォルダを作った日にちをいつまでもキープしておきたいということでしょうか。 また、フォルダをコピーするとコピーした日がスタンプされますね。移動はどうなるでしょうか(実験すればすぐですが)。タイムスタンプの考え方とはどのようなことになるでしょうか。また、タイムスタンプの付け方の設定変更はできないでしょうか。
- 締切済み
- Windows 10
- ファイルやフォルダのタイムスタンプ
WindowsXPやVistaではファイルやフォルダに 作成日、更新日などのタイムスタンプがあります。 このタイムスタンプはどういう際に付与されるでしょうか? 通常の 新規作成で保存→更新 というのであれば作成日、更新日で理解できます。 ただ、ファイルのコピー、ファイルのダウンロード、圧縮、解凍時も 影響してそうです。 それに時々、作成日が更新日より若いといったことにも出くわします。 もちろん、操作するPCの時間が狂っていたからという理由もなくは ないと思いますが、自分の感覚ではそれ以外の理由が大きく感じています。私が考えている(私の感覚の)、タイムスタンプのつく予想と 大きくかけ離れている気がします。 どなたか詳しい方がいらっしゃいましたら、 "基本的なタイムスタンプの考え方"を教えていただければと思います。 よろしくお願いします。
- ベストアンサー
- Windows系OS
お礼
take_tetsuさんありがとうございました。 ご教示頂いた方法でできました。 ありがとうございました。