『壹』 怎樣批量獲取文件的 「創建內容的時間、創建日期、修改日期」。最好能用VBA 或者變成EXCEL列表,求大神
SubGetFileTime()
DimiAsInteger
i=1
Setfso=CreateObject("Scripting.FileSystemObject")
Setfs=fso.getfolder("d:.").Files
WithSheet1
.Cells(1,1)="序號":.Cells(1,2)="創建時間":.Cells(1,3)="最後修改時間":.Cells(1,4)="最後訪問時間"
ForEachfInfs
i=i+1
.Cells(i,1)=f.Name:.Cells(i,2)=f.datecreated:.Cells(i,3)=f.DateLastModified:.Cells(i,4)=f.DateLastAccessed
Next
EndWith
EndSub
以上即是VBA代碼,運行後自動將D盤根目錄下的文件名稱和相關時間屬性填寫在Sheet1中,見下圖效果:
『貳』 java怎樣實現獲取文件創建時間啊,求幫助。
文件創建時間在Java 7/JDK 1.7之後才支持。早期Java 6 和部分linux只支持文件的「最後修改時間」。 很多環境下專兩個時間相屬同。
FileTimet=Files.readAttributes(Paths.get("c:\dir\file.txt"),BasicFileAttributes.class).creationTime();
System.out.println(t);
;
『叄』 java怎麼獲取文件的創建時間,最後訪問時間
假如你的jdk環境可以在1.7或之上,推薦你用nio包下的一個對象
代碼如下:
Pathp=Paths.get("C:/1.txt")
try{
BasicFileAttributesatt=Files.readAttributes(p,BasicFileAttributes.class);//獲取文件的屬性
att.creationTime().toMillis();
att.lastAccessTime().toMillis();
att.lastModifiedTime().toMillis();
}catch(IOExceptione1){
e1.printStackTrace();
}
//如各個方法名稱顯示的,你研究下吧
『肆』 linux下C語言怎麼獲取文件創建時間
可以通過stat來讀取文件,就可以獲取到相關的文件信息。
char buf[65];
struct stat;
stat("c:\\test.txt", &sb);
sb.st_ctime 就是文件的創建時間。你可以用專localtime()
轉換成立能夠識屬別的時間。
struct tm* t=localtime(sb.st_ctime);
sprintf(buf, "%04d-%02d-%02d %02d:%02d:%02d",
t->tm_year+1900, t->tm_mon+1, t->tm_mday,
t->tm_hour, t->tm_min, t->tm_sec);
『伍』 java循環獲取文件夾里文件創建時間 。。
可以通過File流的讀取所有的文件,之後通過Runtime.getRuntime().exec方法獲取時間。
舉例:
File file = new File("F://2007vb6");// 文件目錄
try {
for (File demoFile : file.listFiles()) {
Process ls_proc = Runtime.getRuntime().exec(
"cmd.exe /c dir " + file.getAbsolutePath() + " /tc");// 通過DOS獲得的創建時間
InputStream is = ls_proc.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is));
String str;
int i = 0;
while ((str = br.readLine()) != null) {
i++;
if (i == 6) {
System.out.println("Create time:" + str.substring(0, 17)); //創建時間獲取
}
}
}
『陸』 獲取指定文件的創建時間應該怎麼寫
以下是獲得文件創建時間的代碼,寫入資料庫就自己寫吧,上一個問題已經說了怎麼寫資料庫,我就不寫代碼了。
function TForm1.FileCreateTime(AFile: String): TDateTime;
var
hFile : THandle;
ST : TSystemTime;
lpCreationTime, lpLastAccessTime, lpLastWriteTime: TFileTime;
begin
try
if not FileExists(AFile) then Exit;
hFile := FileOpen(AFile, fmOpenWrite or fmShareDenyNone);
GetFileTime(hFile, @lpCreationTime, @lpLastAccessTime, @lpLastWriteTime);
//CreationTime 獲得創建時間
FileTimeToLocalFileTime(lpCreationTime, lpCreationTime);
FileTimeToSystemTime(lpCreationTime, ST);
Result := SystemTimeToDateTime(ST);
{ //LastAccessTime 獲得最後訪問時間
FileTimeToLocalFileTime(lpLastAccessTime, lpLastAccessTime);
FileTimeToSystemTime(lpLastAccessTime, ST);
AoLastAccessTime := SystemTimeToDateTime(ST);
//LastWriteTime 獲得最後修改時間
FileTimeToLocalFileTime(lpLastWriteTime, lpLastWriteTime);
FileTimeToSystemTime(lpLastWriteTime, ST);
AoLastWriteTime := SystemTimeToDateTime(ST); }
FileClose(hFile);
except
end;
end;
『柒』 如何取得文件名的創建時間,修改時間,大小
1
找到要查看的文件,右鍵點擊屬性
2
在彈出的對話框中,我們明顯可以看到有更詳細的信息,有文件的類型,位置,大小,佔用電腦空間,創建日期,修改日期等等,如下圖
3
當然我們如果只查看文件的大小和修改日期還有更簡潔的方法,左鍵點擊文件不動,會彈出一個對話框,顯示文件的大小和修改日期
『捌』 Java如何獲取文件的創建時間
文件創建時間在Java 7/JDK 1.7之後才支持。早期Java 6 和部分linux只支持文件的「最後修改時間」內。 很多環境下兩個時容間相同。
FileTimet=Files.readAttributes(Paths.get("c:\dir\file.txt"),BasicFileAttributes.class).creationTime();
System.out.println(t);
;
『玖』 怎樣可以得到文件的,創建日期等文件屬性
使用如下API:
HANDLE WINAPI FindFirstFile(
__in LPCTSTR lpFileName, //文件路徑
__out LPWIN32_FIND_DATA lpFindFileData //文件屬性信息
);
該函數可以獲取文件制定文件包括時間在內的屬性信息。這些信息包含在第二個參數執行的結構中:
typedef struct _WIN32_FIND_DATA {
DWORD dwFileAttributes;
FILETIME ftCreationTime; //文件創建時間
FILETIME ftLastAccessTime; //文件訪問時間
FILETIME ftLastWriteTime; //最近一次修改時間
DWORD nFileSizeHigh;
DWORD nFileSizeLow;
DWORD dwReserved0;
DWORD dwReserved1;
TCHAR cFileName[MAX_PATH];
TCHAR cAlternateFileName[14];
} WIN32_FIND_DATA, *PWIN32_FIND_DATA, *LPWIN32_FIND_DATA;
其中時間FILETIME結構體如下:
typedef struct _FILETIME {
DWORD dwLowDateTime;
DWORD dwHighDateTime;
} FILETIME, *PFILETIME;
MSDN不推薦自己加減獲取系統格式的時間,而是推薦使用
BOOL WINAPI FileTimeToSystemTime(
__in const FILETIME *lpFileTime, //上面獲取的時間
__out LPSYSTEMTIME lpSystemTime //系統時間
);
這里獲取的是系統時間:
typedef struct _SYSTEMTIME {
WORD wYear; //年
WORD wMonth; //月
WORD wDayOfWeek; //周幾
WORD wDay; //日
WORD wHour; //時
WORD wMinute; //分
WORD wSecond; //秒
WORD wMilliseconds; //毫秒
} SYSTEMTIME, *PSYSTEMTIME;
至此,時間成功獲取
實例代碼:
BOOL FileAttributes( LPCTSTR lpszFilePath/*文件路徑*/ )
{
WIN32_FIND_DATA FindFileData = { 0 };
HANDLE hFile = ::FindFirstFile(lpszFilePath, &FindFileData);
if( INVALID_HANDLE_VALUE == hFile )
{ //handling error
return FALSE;
}
SYSTEMTIME CreateTime = { 0 }; //創建時間
SYSTEMTIME AccessTime = { 0 }; //最近訪問時間
SYSTEMTIME WriteTime = { 0 }; //最近修改時間
if( !::FileTimeToSystemTime( FindFileData.ftCreationTime , &CreateTime) )
{
//handling error
return FALSE;
}
if( !::FileTimeToSystemTime( FindFileData.ftLastAccessTime , &AccessTime) )
{
//handling error
return FALSE;
}
if( !::FileTimeToSystemTime( FindFileData.ftLastWriteTime, &WriteTime))
{
//handling error
return FALSE;
}
//OK 獲取時間了,可以使用時間了
::CloseHandle( hFile );
return TRUE;
}
如果用MFC實現就簡單了點:
直接用
static void PASCAL SetStatus(
LPCTSTR lpszFileName,
const CFileStatus& status,
CAtlTransactionManager* pTM = NULL
);
這個靜態成員就好了
struct CFileStatus
{
CTime m_ctime; // creation date/time of file 創建時間
CTime m_mtime; // last modification date/time of file 最近修改時間
CTime m_atime; // last access date/time of file 最近訪問時間
ULONGLONG m_size; // logical size of file in bytes
DWORD m_attribute; // logical OR of CFile::Attribute enum values
TCHAR m_szFullName[_MAX_PATH]; // absolute path name
};
示例:
TCHAR* pFileName = _T("ReadOnly_File.dat");
CFileStatus status;
CFile::GetStatus(pFileName, status);
//status中就有時間
//直接用CTime的Format函數格式化為隨意形式的時間字元串格式即可
『拾』 java 查看文件創建時間
在java中沒有正式的方法來獲取文件的創建時間,但是,可以使用下面的解決方法在Windows平台上獲取文件的創建日期。
java如何獲取文件的創建日期
package com.mkyong.file;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class GetFileCreationDateExample
{
public static void main(String[] args)
{
try{
Process proc =
Runtime.getRuntime().exec("cmd /c dir c:\\logfile.log /tc");
BufferedReader br =
new BufferedReader(
new InputStreamReader(proc.getInputStream()));
String data ="";
//it's quite stupid but work
for(int i=0; i<6; i++){
data = br.readLine();
}
System.out.println("Extracted value : " + data);
//split by space
StringTokenizer st = new StringTokenizer(data);
String date = st.nextToken();//Get date
String time = st.nextToken();//Get time
System.out.println("Creation Date : " + date);
System.out.println("Creation Time : " + time);
}catch(IOException e){
e.printStackTrace();
}
}
}
結果:
Extracted value : 31/05/2010 08:05 14 logfile.log
Creation Date : 31/05/2010
Creation Time : 08:05