- ベストアンサー
csvファイルの作成日時の取得方法と2行目の日時の取得方法
- csvファイルの作成日時を取得する方法を教えてください。
- csvファイル内の2行目の日時を取得する方法を教えてください。
- csvファイルの作成日時の取得方法と2行目の日時の取得方法をまとめました。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
Private Sub Command1_Click() Dim dteDelete As Date Dim dteCreate As Date Dim strFileName As String Dim strDirName As String '日付として有効か? If Not IsDate(Me.Text1.Text) Then Exit Sub '削除指定日付取得 dteDelete = DateValue(Me.Text1.Text) '対象フォルダのファイルを検索 strDirName = "C:\work\" strFileName = Dir(strDirName & "*.*", vbNormal) '対象フォルダのファイル数分ループ Do While Len(strFileName) 'ファイルのフルパス strFileName = strDirName & strFileName 'ファイルの作成日付を取得 dteCreate = GetCreateFileDateTime(strFileName) 'ファイルの作成日付は削除対象日付か? If DateDiff("d", dteCreate, dteDelete) = 0 Then 'ファイル削除 Kill strFileName End If '次のファイル strFileName = Dir Loop End Sub ※GetCreateFileDateTimeは#1にて、 記述した「GetFileTime Api」をラップした関数 ファイル削除関数はとりあえずKill関数を使用していますが、 「Delete Api」か「FileSystemObjectのDeleteFileメソッド」を使用したほうが良いでしょう
その他の回答 (1)
- how-do-you-do
- ベストアンサー率56% (59/104)
・win32api GetFileTime http://vbvbvb.com/jp/gtips/0701/gGetFileTimeFileTimeToLocalFileTime.html ・CSVファイルの1項目目を(メッセージボックスに)表示していく Private Sub Command1_Click() Dim strFileName As String Dim fNum As Integer Dim strLine As String Dim varLine As Variant strFileName = "C:\test.csv" fNum = FreeFile Open strFileName For Input Access Read As #fNum Do Until EOF(fNum) Line Input #fNum, strLine varLine = Split(strLine, ",") MsgBox varLine(0) Loop Close #fNum End Sub
補足
ありがとうございます もう1つ教えてください 1)C:\work フォルダ内に多数のファイルが存在します その中から、作成日時が 2005/03/28(任意:画面にて入力) の複数ファイルすべてを削除する 方法をご教示くださいます様よろしくお願いいたします