TC官方合作论坛

 找回密码
 立即注册
楼主: 1364770121

[其他] 求大神做个插件

[复制链接]
 楼主| 发表于 2017-3-24 15:30:41 | 显示全部楼层
剑仙十号 发表于 2017-3-24 14:23
这个所花的时间太多了。
代码要几百行。多的要上千行。
一时间也做不完。

如果大神愿意帮我  我可以等
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-3-25 11:17:24 | 显示全部楼层
不能沉
回复

使用道具 举报

 楼主| 发表于 2017-3-27 07:58:33 | 显示全部楼层
不能沉
回复

使用道具 举报

 楼主| 发表于 2017-3-29 18:53:19 | 显示全部楼层
不能沉
回复

使用道具 举报

 楼主| 发表于 2017-3-30 08:09:35 | 显示全部楼层
不能沉
回复

使用道具 举报

发表于 2017-3-30 15:41:58 来自手机 | 显示全部楼层
易语言,取文件属性()

这些东西都有了。


易语言。怎样用代码查询创建时间,修改时间,访问时间。
.
右键某个文件,属性窗口,可以查询到该文件的
创建时间,最后修改时间,最后访问时间。
易语言。怎样用代码查询这三个时间??

取文件属性()
回复 支持 反对

使用道具 举报

发表于 2017-3-30 19:36:20 来自手机 | 显示全部楼层
用系统api也可以实现。

tc调用api函数。GetFileTime

搜狗百科
GetFileTime
外文名        GetFileTime
功能说明        取得指定文件的时间信息
词 性        名词
语 言        英文
微信文章
新闻动态
VB声明
Declare Function GetFileTime Lib"kernel32"Alias"GetFileTime"(ByVal hFile As Long, lpCreationTime As FILETIME, lpLastAccessTime As FILETIME, lpLastWriteTime As FILETIME) As Long
功能说明
取得指定文件的时间信息
返回值
Long,非零表示成功,零表示失败。会设置GetLastError
参数类型及说明
hFile Long,文件的句柄

lpCreationTime FILETIME,用于装载文件的创建时间

lpLastAccessTime FILETIME,用于装载文件上一次访问的时间(FAT文件系统不支持这一特性)

lpLastWriteTime FILETIME,用于装载文件上一次修改的时间
注解
如果不需要特定的信息,那么lpCreationTime,lpLastAccessTime,lpLastWriteTime都可以设置为零(用ByVal As Long)。这个函数返回的文件时间采用UTC格式。可以使用FileTimeToSystemTime方法,将文件时间转换为系统时间格式。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-3-31 08:14:51 | 显示全部楼层
剑仙十号 发表于 2017-3-30 19:36
用系统api也可以实现。

tc调用api函数。GetFileTime

谢谢大师,那获取大小和尺寸怎么弄?
回复 支持 反对

使用道具 举报

发表于 2017-3-31 19:46:34 来自手机 | 显示全部楼层
怎样修改文件的创建时间,修改时间,访问时间?
用tc的结构体可以编写。
一般是用VC++结构体来编写。
代码量非常多。
回复 支持 反对

使用道具 举报

发表于 2017-3-31 19:47:09 来自手机 | 显示全部楼层
怎样修改文件的创建时间,修改时间,访问时间?
用tc的结构体可以编写。
一般是用VC++的结构体来编写。

满意回答
在VC++下对文件属性的获取与更改
摘要:本文讲述了在Visual C++ 下编程实现对磁盘文件的属性进行获取以及更改的一般方法,并给出部分相关的关键代码。
一、 引言
文件是数据在磁盘上最常用的一种存放形式,也是在程序设计中与之经常打交道的一种编程对象,不少程序尤其是数据传输和处理类的应用程序更是需要频繁的创 建、读取和写入文件。对于一些要求不是很严格的程序,我们往往只关心文件的内容是否正确、文件大小是否有增减或是再严格一些,看文件名是否符合规定等等。 以上这些要素对于大多数程序而言显然是可以满足实际需求的,但对于某些特殊行业的一些有着比较严格要求的软件系统,仅有以上要素还是远远不够的,往往还需 要对文件的所有属性诸如文件的创建时间、文件的最后访问时间、文件的最后修改时间等等进行提取处理与重新设置。
二、 WIN32_FIND_DATA结构
关于文件的全部属性信息,总计有以下以下9种:文件的标题名、文件的属性(只读、存档,隐藏等)、文件的创建时间、文件的最后访问时间、文件的最后修改时间、文件大小的高位双字、文件大小的低位双字、保留、保留。在这里只有文件标题名和文件的长度可以通过CFile类比较方便的获得,而对于其他几种属性的获取和设置就无能为力了。
在用findfirst()和findnext()函数去查找磁盘文件时经常使用的一个数据结构WIN32_FIND_DATA的成员变量里包含了以上所有的文件属性,因此可以通过这个结构作为获取和更改文件属性的手段。该结构的内容如下:
typedef struct _WIN32_FIND_DATA {
DWORD dwFileAttributes; //文件属性
FILETIME ftCreationTime; // 文件创建时间
FILETIME ftLastAccessTime; // 文件最后一次访问时间
FILETIME ftLastWriteTime; // 文件最后一次修改时间
DWORD nFileSizeHigh; // 文件长度高32位
DWORD nFileSizeLow; // 文件长度低32位
DWORD dwReserved0; // 系统保留
DWORD dwReserved1; // 系统保留
TCHAR cFileName[ MAX_PATH ]; // 长文件名
TCHAR cAlternateFileName[ 14 ]; // 8.3格式文件名
} WIN32_FIND_DATA, *PWIN32_FIND_DATA;
可以通过FindFirstFile()函数根据当前的文件存放路径查找该文件来把待操作文件的相关属性读取到WIN32_FIND_DATA结构中去:
WIN32_FIND_DATA ffd ;
HANDLE hFind = FindFirstFile("c:\\test.dat",&ffd);
在使用这个结构时不能手工修改这个结构中的任何数据,结构对于开发人员来说只能作为一个只读数据,其所有的成员变量都会由系统完成填写。在MSDN帮助中可以查找到关于WIN32_FIND_DATA结构的更加详细的说明。


三、 文件属性信息的获取与更改
为了更好的保存获取到的文件属性信息,对应于文件属性构造一个自定义的FILE_INFO数据结构,获取的属性信息可暂存于此:
typedef struct _FILE_INFO {
TCHAR szFileTitle[128]; //文件的标题名
DWORD dwFileAttributes; //文件的属性
FILETIME ftCreationTime; //文件的创建时间
FILETIME ftLastAccessTime; //文件的最后访问时间
FILETIME ftLastWriteTime; //文件的最后修改时间
DWORD nFileSizeHigh; //文件大小的高位双字
DWORD nFileSizeLow; //文件大小的低位双字
DWORD dwReserved0; //保留,为0
DWORD dwReserved1; //保留,为0
} FILE_INFO, * PFILE_INFO;
首先用FindFirstFile()函数将文件属性获取到WIN32_FIND_DATA 结构对象FindFileData中去,之后可以用FindClose()将其关闭,并把FindFileData中的有关文件属性信息的内容复制到自定 义结构FILE_INFO的结构对象FileInfo中备用。下面是关于这部分描述的部分关键代码:
//声明结构对象
FILE_INFO FileInfo;
WIN32_FIND_DATA FindFileData;
……
//获取文件属性信息
FindClose(FindFirstFile("Test.txt",&FindFileData));
memset(&FileInfo,0,sizeof(FILE_INFO));
……
//将文件属性信息保存到FileInfo中备用
strcpy(FileInfo.szFileTitle,myFile.GetFileTitle());
FileInfo.dwFileAttributes = FindFileData.dwFileAttributes;
FileInfo.ftCreationTime = FindFileData.ftCreationTime;
FileInfo.ftLastAccessTime = FindFileData.ftLastAccessTime;
FileInfo.ftLastWriteTime = FindFileData.ftLastWriteTime;
FileInfo.nFileSizeHigh = FindFileData.nFileSizeHigh;
FileInfo.nFileSizeLow = FindFileData.nFileSizeLow;
……
在获取到文件的原始属性信息后既可以原封不动的将属性重新写到文件,也可以对其中某一项或某几项属性内容进行修改后再行写入文件,从而达到更改文件属性 的目的。

比如可以用SetFileTime()函数设置文件的创建时间、最近一次访问时间以及最近一次修改的时间等等:
SetFileTime((HANDLE)destFile.m_hFile, //待写入的文件句柄
&FileInfo.ftCreationTime, //文件的创建时间
&FileInfo.ftLastAccessTime, //文件最近一次的访问时间
&FileInfo.ftLastWriteTime); //文件最近一次的修改时间
也可以用SetFileAttributes() 函数实现对文件属性的修改:
SetFileAttributes(FileInfo.szFileTitle,FileInfo.dwFileAttributes);
至于文件名的修改则更加简单,直接在创建文件时在CreateFile()或CFile类的成员函数Open里直接对文件名参数进行设置即可。
文章链接地址:
jqotgp  推荐于:2016-10-18
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条

关闭

小黑屋|TC官方合作论坛 (苏ICP备18045623号)

GMT+8, 2024-5-16 16:21 , Processed in 0.039601 second(s), 18 queries .

Powered by 海安简单软件服务部

© 2008-2019 版权所有 保留所有权利

快速回复 返回顶部 返回列表