圧縮ファイル(ZIP形式)のファイルを解凍したところ、解凍したファイルの日付が+9時間されてしまいます。圧縮側のPCの設定が悪いのか解凍側のPCの設定が悪いのかの切り分けをしたいのですがまずは解凍側でチェックすべき点でよいアドバイスがあれば教えて下さい。(ツールで圧縮ファイルの中身を見たときの日付と解凍後のファイルの日付が異なります)

このQ&Aに関連する最新のQ&A

A 回答 (2件)

説明し始めると長くなるので簡単に。



通常、ZIPファイルには日付は GMTで記録されています。そのため、日本時刻に変換する際に+9時間されます。これは、タイムゾーンと呼ばれる物で、Windowsの場合は[コントロールパネル][日付と時刻]で確認できます。
書庫内を表示する時刻とのずれは、解凍するツールによって変わります。解凍するツールが書庫内を表示する時にタイムゾーンを適用して表示する物もあるからです。
あなたの使ったツールは、書庫内を表示する場合は書庫内に記録された時刻で、解凍する時にタイムゾーンを適用するような仕様になっていると思われます。
ただし、圧縮するツールによってはタイムゾーンを全く無視している物も多数存在します。
    • good
    • 0
この回答へのお礼

ありがとう御座いました。大変参考になりました。

お礼日時:2001/03/07 12:40

9時間の概要を述べると、それはグリニッジ標準時における日本の誤差が9時間なのです。



そのタイムスタンプが誤差無しで表示されているか、
あなたのPCが日本でないか、ZIPソフトが日本で無いかが原因であると考えます。

まず、あなたのPCの国を調べてみましょう。
スタートメニューの設定のコンソールパネルの地域アイコンです。
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q圧縮ファイル解凍後もフォルダ更新日時を保持するにはどうすれば良いか?

Windows標準のzip圧縮(ファイルを右クリック後「送る」より「圧縮(zip形式)フォルダ」を選択する)を利用しているのですが、
ファイル解凍後のフォルダ更新日時が解凍した日時になってしまいます。

フォルダ更新日時を保持する方法をお教えください。よろしくお願いします。

■OS:WindowsXP SP2

Aベストアンサー

ファイルを解凍する際、解凍プログラムは「もしフォルダがなければ作成し、そのフォルダの中にファイルを作成する」という手順を実行します。

このとき、フォルダの中にファイルを作成しますので、そのフォルダの内容は「ファイルがない状態」から「ファイルがある状態」に「変更」されてしまいます。これに伴い、そのフォルダの更新日時が変わってしまいます。

ですので残念ながら、標準のzip圧縮を利用する限り、フォルダ更新日時が変わってしまうのは避けられないかと思います。

QZipファイルのタイムスタンプが解凍時刻になる

Zipファイルを解凍した時に、
フォルダのタイムスタンプが、
ファイル作成時ではなく解凍した日時になってしまいます。

ファイルは作成日時のまま保持できるのですが、
なぜかフォルダはどうしても解凍日時になります。

これは、圧縮時の設定なのか、解凍時の設定によるものなのか
どちらなのでしょうか。

WEBの制作物管理にて納品データを管理するにあたって
困っています。

きちんと作成時のままに保持するためには
どのようにすれば良いのでしょうか。

Aベストアンサー

windows7(64bit)とLhaz(64bit)の組合せで圧縮・解凍をやってみましたが,
確かにフォルダ部分のみ更新日時が現時刻に書換えられます。
ファイルの更新日時は残ってます。
なお,エクスプローラから直接ZIPを解凍すると,ファイル自体の更新日時も現時刻に
書換えられてしまう様なので,ご注意を。
設定を探してみましたが,わかりませんでした。

Qファイルをコピーすると、更新日時が変わる

パソコンのハードディスクにあるファイルを、USBメモリにコピーしてから、それらのファイルの更新日時を比較すると、コピー先のファイルの方が数秒新しくなっている場合があるのですが、これはパソコンまたはUSBメモリの故障ですか? それともこれでも正常ですか?

Aベストアンサー

HDDとUSBメモリで「ファイルシステムの形式」が異なる場合、更新日付の管理方法も異なってくるので、日付が1秒ほど変わります。

例えば、HDDが「NTFS」でフォーマットされ、USBメモリが「FAT32」でフォーマットされている場合は、
NTFS:更新日付は「1秒単位」で保存されている
FAT32:更新日付は「2秒単位」で保存されていて「0、2、4…56、58」になる
と言う違いがあります。

なので「HDD上で12:34:51のファイルは、USBメモリにコピーすると12:34:50になる」と言うように「奇数秒のファイルは偶数秒にされる」のです。

USBメモリのファイルの更新時刻を見ると「全部、偶数秒」になってる筈です。

これは「ファイルシステムの仕様で、これで正常」ですから「どうにもなりません」

Qデータ移行でタイムスタンプが変わるのを防ぎたい

新しいパソコンを買ったので、前のパソコンからバックアップソフトを使ってデータを移行しました。

全てスムーズに移動できたと安心していたところ、ボイスレコーダーで録音したファイルのタイムスタンプが全て書き換わってしまっており、いつ録音したものかも分からなくなってしまっていることが判明し、大変ショックを受けています。

どうすれば、このような自動的な変更を防ぐことができますか? 

私の使っているボイスレコーダーは、mp3で最初から録音してくれ、そのままパソコンに持ってくることができます。しかし、その時にファイル名に日付などは一切入りません。したがって頼りになるのは、ファイルのタイムスタンプだけです。

ところが現在、ファイル作成日は、バックアップから書き戻した日時になってしまっており、ファイル更新日は、ボイスレコーダーから前のパソコンに移動した日時になってしまっています。

どうしたらこのような事態が防げるでしょうか? パソコンは前のも今回のもWindows7です。

Aベストアンサー

CopyExtやFire File Copyのように日付の同期が可能なコピーツールを使います。

あらゆるコピー・移動作業を超絶便利にできるフリーソフト「CopyExt - 拡張コピー」 - GIGAZINE
http://gigazine.net/news/20080913_cpext/

Fire File Copy - k本的に無料ソフト・フリーソフト
http://www.gigafree.net/utility/move/firefilecopy.html

バックアップツールでも同期コピーは可能な筈ですが、ソフトによって異なるので一概には云えません。
別の方法として、複数ファイルを圧縮ファイルにまとめてからコピーする方法も有ります。
これも圧縮/展開ソフトによっては日付情報を保持してくれない場合があるので確実では有りませんが、バックアップファイル作れる点でメリットは有ります。

QコマンドプロンプトのERRORLEVELについて!

コマンドプロンプトの記述で、ERRORLEVELというのがありますが
そのERRORLEVELが、0の場合は正常終了と考えていいのでしょうか?

Aベストアンサー

>if not ERRORLEVEL 1 goto aaa
>教えていただいた上記記述なんですが、
>1じゃないということは、2~255も含まれるのではないのでしょうか?
>素朴な疑問ですいません。

if文の文法については、if /? で調べてください。

if ERRORLEVEL 1 goto aaa は、ERRORLEVEL が1以上の時にgoto aaaするという意味です。ということを#4の人が書いてるのですが・・・
従って、その否定である、
if not ERRORLEVEL 1 goto aaa は、ERRORLEVEL が1未満つまり0のときにgoto aaaします(負になることはないので)。

Qコマンドプロンプトの「%1」と「%~1」の違いがわからない

コマンドプロンプトの「%1」と「%~1」の違いがわからない
このサイトにhttp://ykr414.com/dos/bat.html
%~1は「全ての引用句(")を削除して%1を展開する。」とありますがよくわかりません。

%1は入力されたファイルのフルパスだと思っているのですけど。
"%1"=%~1ということでしょうか。

Aベストアンサー

%1は、バッチファイルに指定された「第一引数」です。
バッチファイルに限らず、プログラムを実行するときには引数を指定することができます。
単純に関連づけて実行するとかバッチファイルのアイコンにファイルをにドラッグドロップするとかだと、引数は一つない場合が多いですが、
実際にはショートカットを作ったりコマンドプロンプトから指定するとか、二つ以上の引数を指定することができます。
その際、引数と引数の間はスペースで区切られます。(引数指定全体の文字列を、スペースで区切って各引数に分割する)

一方、例えば、マイドキュメントフォルダ「C:\Documents and Settings\ユーザー名\My Documents」を引数にを指定した場合、そのままだとフォルダ名に空白が入ってるので、
%1=C:\Documents
%2=and
%3=Settings\ユーザー名\My
%4=Documents
と、指定した一つの名前が複数の引数に分断されてしまします。

そこで、こういう場合には、ダブルクオートでファイル名を括ります。
プログラム起動時の引数に 「"C:\Documents and Settings\ユーザー名\My Documents"」
といった感じで、ダブルクオートを付けたものを指定すると、
%1="C:\Documents and Settings\ユーザー名\My Documents"
と、括られた部分がまとめて一つの引数と取り扱われるようになります。
そして、この時%~1は
%~1=C:\Documents and Settings\ユーザー名\My Documents
になります。

%1と%~1の使い分けですが、
引数をこのままファイル名として使う時は、%1をそのまま使えば問題ないのです。
(バッチファイルから別のプログラムを起動するときにファイル指定するとかだったら、
%1を使えば、ダブルクオート込みで渡されるので、そのまま一つの引数としてつかます)

一方、フォルダを指定してそのフォルダ下のファイル名を作る、といった処理をしようとする時には、
ダブルクオートが邪魔なので、そういう時は%~1を使います。
たとえば、指定した引数をフォルダとして、そのフォルダ下の「新規作成データ.txt」ファイルを表すフルパスのファイル名を作りたい場合、

単に
 「%1\新規作成データ.txt」とすると、「"C:\Documents and Settings\ユーザー名\My Documents"\新規作成データ.txt」になってしまいますが、

「"%~1\新規作成データ.txt"」とすれば「"C:\Documents and Settings\ユーザー名\My Documents\新規作成データ.txt"」という、正しくクオートされたファイル名を作ることができます。

%1は、バッチファイルに指定された「第一引数」です。
バッチファイルに限らず、プログラムを実行するときには引数を指定することができます。
単純に関連づけて実行するとかバッチファイルのアイコンにファイルをにドラッグドロップするとかだと、引数は一つない場合が多いですが、
実際にはショートカットを作ったりコマンドプロンプトから指定するとか、二つ以上の引数を指定することができます。
その際、引数と引数の間はスペースで区切られます。(引数指定全体の文字列を、スペースで区切って各引数に分割す...続きを読む

Qファイル名が長すぎる場合のコピーや移動は?

200ギガを越えるHDDのバックアップをしていました。

最新のWindows 8 なので油断してしまい、表題の件に関わる警告のウィンドウが出たときにスキップの操作をしてしまいました。つまり、古いHDDの中に取り出せないファイルが残ってしまったのです。

何文字以上がコピペなどの規制にかかるのでしょうか?

コピーできなかったファイルを探し出す方法を教えてください。
ファイル数は88万以上あり、手動ではできそうにもありません。

Aベストアンサー

パス(C:\a.jpgなら8文字)を含めて半角で256文字、全角は1文字で半角2文字分で数えます。
ただ、制限文字数は他の要素(コピー時の内部処理的なコマンド追加)で早まったりするので、240文字程度までに抑えておくのが良いでしょう。

ファイル名が少々長い(40文字とか)程度でも、深い階層に置いていたり、途中にあるフォルダの名前も長かったり、ファイルやフォルダ名が全角だったりすると、意外と簡単に制限に引っかかります。

良くあるのが、最初は浅い階層に置いているファイルを、整理の為に階層の一番下に置くことを繰り返していると簡単に10階層以上下になって文字数オーバーとかです。

bunbackupで差分コピーを使うと、エラーが発生してコピーできなかったファイルがわかります。すでにほとんどのBackupが終わっているならば新旧HDDの比較だけなので、そう時間はかからないと思いますよ。

Q写真のデータをSDカードに「移動」したら、撮影日付が書き換えられてしまうのですか?

SHARPのAQUOS(SH-RM02)を使っています。スマホ本体の空き容量が少なくなってきたので、1400枚程貯まった写真のデータをSDカードに「移動」しました。スマホに標準装備のアプリ「コンテンツマネージャー」で簡単に移動する事が出来ましたが、写真の日付データ(撮影日と更新日全て)が、移動操作をした日(同じ日)に変わってしまいました。
コピーならまだしも、移動でデータが書き換えられてしまうのは「移動ではない」と思いますが、私の操作方法に不備があったのでしょうか?直す手立てはないのでしょうか?
写真の撮影日は、子供達の卒業や入学前後の思い出を含む、私にとっては貴重な財産なんですが…

Aベストアンサー

それは「撮影日」ではなく、データファイルの「作成日」です。

JPEGファイルにはEXIFという情報が記録された場所があります。
そこには「撮影日」をはじめとする各種の情報が記録されていて、ファイルのコピーや移動では書き換わることはありません。
ですので、それなりの表示ソフトならば正確に「撮影日」を示してくれます。
安心してください。

QCOMコンポーネントって何?

よく、COMコンポーネントって聞くんですが、何のことかわかりません。VBやVBAのような言語名ではないことは、なんとなく分かるのですが・・・。できるだけわかりやすく教えてください。

Aベストアンサー

失礼ですが、クラスをご存知ないのであればCOMは多分
全く理解できないでしょうねぇ

クラスについても、ご自分で勉強が必要だとは思いますが
簡単に説明しておきます。
構造体(属性)に、関数(操作)を加え、カプセル化したものです。
従来のプログラミングでは、変数をばらばらに扱わず、
構造体と呼ばれる型に関係ある変数をまとめて、
プログラム中のデータ構造が明確になるようにしておきました。
そこで、この構造体に専属の関数を加えてしまえば、
その構造体は単独で自分の面倒をみることが出来るようになります。
それがクラスです。
その結果、プログラム中のデータや処理が、クラス単位で整理され、
それぞれ部品のように組み替えが可能になりました。

このように、クラス単位にプログラムを分割することで
巨大なプログラムを明瞭にする言語をオブジェクト指向言語といいます。

また、クラスには親と子があり、「継承」という考えを用いて
どんどんバージョンアップや特化を行うことが容易です。

VBで説明すると、
Dim value as A
として変数を宣言した場合、クラスは「A」です。
valueはオブジェクトや、インスタンスと呼ばれます。
valueを使って、Aに含まれる関数を呼び出して、valueを
操作することが出来ます。
value.Init()
等。

ざっくり説明するとこんな感じです。
詳細については、各言語の書籍を参照してください。

このようにして作ったクラスを、
・他の言語から使いたい
・ネットワーク経由で使いたい
などと言った機能を実現する、Microsoft提供の方法の一つが、
COMやDCOMと呼ばれるものです。
COMは、他のプログラムからの使いまわしに強いので、
一度作っておけば、VB、Delphiは勿論、VBScript、JavaScrips、WSHなどから
呼び出しが可能です。
また、COM自体のバージョンが上がっても、それを呼び出してる
プログラム自体には変更の必要がありません。

失礼ですが、クラスをご存知ないのであればCOMは多分
全く理解できないでしょうねぇ

クラスについても、ご自分で勉強が必要だとは思いますが
簡単に説明しておきます。
構造体(属性)に、関数(操作)を加え、カプセル化したものです。
従来のプログラミングでは、変数をばらばらに扱わず、
構造体と呼ばれる型に関係ある変数をまとめて、
プログラム中のデータ構造が明確になるようにしておきました。
そこで、この構造体に専属の関数を加えてしまえば、
その構造体は単独で自分の面倒をみることが出...続きを読む

QExcel 選択も削除も出来ない画像

 教えて下さい。

 メールに添付されていたExcelのファイルなのですが、張り付けられている画像を削除しようと思ったのですが、画像が選択が出来ないのです。

 [編集]-[ジャンプ]を開いて、「セル選択」ボタンをクリック、「オブジェクト」で選択しようと思ったのですが、「セル選択」の画面の「オブジェクト」の項目がグレーになっていて、ラジオボタンが選択できないようになっているのです。

 「オブジェクトが存在しない・・・そんなはずは・・・」と訳が分からない状態です。

 この「選択できない画像」の正体は何なのか。これはどのように設定し、どのように解除するのか。ご存知の方がおられましたら、御教授下さい。

Aベストアンサー

こんばんはっ。
お困りのようですね。
たぶん、「共有」が原因だと思います。

共有解除できますか?

ツール→ブックの共有→複数ユーザーによる同時編集を行う
にチェック入っていませんか?もし入っていたら、解除してください。(offにして下さい。)
もしだめであれば、他の方法も考えますので、補足してください。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング