File
计算机术语
"File"是一个术语,在Windows中指代文件夹下的各种数据类型的解压形式,也是IT术语"文件传输协议"和编程语言文件命令的意思。同时,"file"是unix和Unix-like操作系统的标准命令,用于确认计算机文件中的数据类型。
IT术语
本地文件传输协议
英文:File Protocol
中文释义:本地文件传输协议
注解:File协议主要用于访问本地计算机中的文件,就如同在Windows资源管理器中打开文件一样。
IT中的应 用:要使用File协议,基本的格式如下:file:///文件路径,比如要打开F盘flash文件夹中的1.swf文件,那么可以在File Explorer或IE地址栏中键入:file:///f:/flash/1.swf并回车。
WINDOWS文件
文件(file)的常见属性如下:hide(隐藏) system(系统) read(只读) write(可写) Archive(存档)
其中,显示隐藏文件的方法如下:
第一种方法:最为常用的是利用文件夹选项来显示隐藏文件夹或文件;
具体操作步聚如下
1、打开我的电脑,进入被隐藏的文件或文件夹目录,比如说D 盘;
选择"工具"菜单下面的“文件夹选项”
2、在弹出的对话框中,选择“查看”选项卡,并滑动滑条,找到“隐藏文件和文件夹”并选中下面的“显示所有文件和文件夹”;
3、点击应用,如果有必要的话,再选择左上角的“应用到所有文件夹”,这样的话,所以目录中的隐藏文件或文件夹就已经显示出000000来了。
提示:
在这里,站长建议大家将隐藏受保护的操作系统文件(推荐)项取消掉,因为,有些病毒会自加s属性,如果此项为默认,那么就看不到病毒文件了。
第二种方法:利用命令显示隐藏文件或文件夹,备,此方法需要读者朋友有一定的运行指令基础命令知识。下面具体进行介绍。
1、我们先去新建一个文件夹,并命名为“测试隐藏文件夹显示方法”示例为在E盘,如下图,并将此文件夹属性设置为“隐藏”,点击应用:
应用以后,我们可以看到,我的E盘中有隐藏对象,如下图,刷新以后,刚才建立的文件夹不在了,(实际是被隐藏了)
2、点击"开始"菜单--"运行"--"cmd"并回车,打开cmd命令窗口,如下图:
我们输入以下命令 e: 然后回车,进入e盘根目录如下图:
再输入命令:attrib -h 测试隐藏文件夹显示方法 并回车,如下图:
再输入dir列出子项命令,结果如下:
怎么样,是不是已经可以看到此文件夹了呢?再回到桌面环境看看吧。
隐藏的文件显示出来了!
Linux命令
LINUX 命令中file 命令
用途
确定文件类型。
语法:
对文件类型分类
file [ -m MagicFile] [ -d ] [ -h ] [ -i ] [ -M File ] [ -f FileList] [File...]
检查 Magic 文件的格式错误
file -c [ -m MagicFile]
描述
file 命令读取用 File 参数或者 FileList 变量指定的文件,在每个文件上执行一系列测试,然后将它们按照类型分类。然后此命令将文件类型写入标准输出。文件可以是常规文件、目录、FIFO(指定的管道)、块特殊文件、字符特别文件、符号链接或者套接字类型。
* 对于长度为零的常规文件,将识别为空文件。
* 对于符号链接文件,缺省情况下此链接后跟符号链接引用的文件。
如果文件是 ASCII 码的格式,则 file 命令将检查前 1024 个字节然后确定文件类型。如果文件不是 ASCII 格式,则 file 命令将尝试区分二进制数据文件和包含扩展字符的文本文件
如果 File 参数指定了可执行程序或者对象模块文件且版本号大于 0则 file 命令将显示版本戳记。ld 命令说明了 a.out 文件的使用。
file 命令使用 /etc/magic 来标识包含某种 magic 数字的文件;即,任何包含可以表示类型的数字或字符串常量的文件。
如果文件不存在,无法读取或者文件状态无法确定,那么文件将不看作会影响退出状态的错误。输出表明文件已被处理,但是类型仍无法确定。
当使用了 -i 标志时,应使用以下格式标识每个 file 指定的操作数:
"%s: %s\n",file,type
除非在 POSIX 语言环境,否则不指定 type 的值,如果 file 指定为下表中列出的类型之一,type 应包含(但不限于)对应字符串。在字符串中显示的每个空格应是一个空格。
表 1. File 实用程序输出字符串 如果 file 是: type 应包含字符串:
目录 目录
FIFO fifo
套接字 套接字
块特殊文件 块特殊文件
字符特别文件 字符特别文件
可执行文件(二进制)可执行文件
空常规文件 空
符号链接 符号链接到
ar 归档库 压缩文档
扩展的 cpio 格式 cpio 压缩文档
扩展的 tar 格式 tar 压缩文档
壳层 脚本命令文本
C 语言源 C 程序文本
Fortran 源 fortran 程序文本
如果 file 标识为符号链接,则应使用以下备用输出格式:
"%s: %s %s\n",file,type,contents of link"
如果 file 操作数指定的文件不存在或不可读,则字符串 cannot open应包含为 type 字段的一部分,但这不应当作影响退出状态的错误。如果 file 操作数指定的文件的类型不能确定,则字符串 数据应包含为 type 字段的一部分,但这不应当作影响退出状态的错误。
标志
-c 检查指定的 magic 文件(缺省情况下,/etc/magic 文件)有无格式错误。此验证一般不进行。在此标志下文件输入不执行。
-d 将任何缺省系统测试应用到文件。
-f FileList 读取指定的文件列表。文件必需在每行列出一个文件,不包含开开头和拖尾空格。
-h 当遇到符号链接时,将文件标识为符号链接。如果未指定 -h 标志且 file 是指向不存在文件的符号链接,file 应将文件标识为符号链接,就好像指定了 -h 标志。
-i 如果文件不是常规文件,则不尝试进一步对文件类型进行分类,但如描述中指定的那样标识文件。
-m MagicFile 指定 magic 文件的文件名(缺省情况下,/etc/magic)。
-M File 指定包含应应用于文件以对其分类的测试的文件的名称。不应应用缺省系统测试。
退出状态
此命令返回下列出口值:
0 成功结束。
\u003e0 发生错误。
示例
1. 要显示文件中包含的信息类型,请输入:
file myfile
这将显示文件 myfile的类型(例如目录,数据,ASCII 文本,C 程序源,压缩文档)。
2. 要显示在文件名列表中指定的每个文件的类型,请输入:
file -f filenames
这将显示在 filenames 列表中指定的每个文件的类型。每个文件必须单独出现在一行上。
注:
要从 file 命令获取定制的信息,请和 -m 标志一起使用独立的 magic 文件。不建议编辑只读的 /etc/magic 文件。
文件
/usr/bin/file 包含 file 命令。
/etc/magic 包含文件类型数据库。(或者是/usr/share/magic)
即使出现新的文件格式,只要知道文件原有签名,在magi
c文件里进行追加就可以识别这个文件
编程用语
Java
Java中的File
引入java.io.File包
File构造方法:
File(File parent, String child) 根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。
File(String pathname) 通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。
File(String parent, String child) 根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。
File常用方法:
canExecute() 测试应用程序是否可以执行此抽象路径名表示的文件。
canRead() 测试应用程序是否可以读取此抽象路径名表示的文件。
canWrite() 测试应用程序是否可以修改此抽象路径名表示的文件。
compareTo(File pathname) 按字母顺序比较两个抽象路径名。
createNewFile() 当且仅当不存在具有此抽象路径名指定名称的文件时,不可分地创建一个新的空文件。
delete() 删除此抽象路径名表示的文件或目录。
deleteOnExit() 在虚拟机终止时,请求删除此抽象路径名表示的文件或目录。
equals(Object obj) 测试此抽象路径名与给定对象是否相等
exists() 测试此抽象路径名表示的文件或目录是否存在。
getAbsoluteFile() 返回此抽象路径名的绝对路径名形式。
getAbsolutePath() 返回此抽象路径名的绝对路径名字符串。
getCanonicalFile() 返回此抽象路径名的规范形式。
getCanonicalPath() 返回此抽象路径名的规范路径名字符串。
getFreeSpace() 返回此抽象路径名指定的分区中未分配的字节数。
getName() 返回由此抽象路径名表示的文件或目录的名称。
getParent() 返回此抽象路径名父目录的路径名字符串;如果此路径名没有指定父目录,则返回 null。
getParentFile() 返回此抽象路径名父目录的抽象路径名;如果此路径名没有指定父目录,则返回 null。
getPath() 将此抽象路径名转换为一个路径名字符串,更多关于File的使用帮助可以参考引用文章。
C#
C#中FILE
一、创建指定路径的文件
创建文件语法重载原型为:File.Create(Stringfilepath);
我们要注意:在程序中使用File类,必须使用using语句引入System命令空间IO
二、复制文件
复制文件语法重载原型为:File.Copy (String,String,Boolean);
第三个参数如果为true,表示复制时如果目标文件已经存在,就替换原来的文件。如果是false,则不替换。如果不写,默认替换原文件。
三、移动文件
移动文件语法重载原型为: File.Move(String,String);
注意:Move方法没有采用3个参数的重载,如果文件存在,则出现异常。
四、设置文件的属性
File.SetAttributes(filepath,FileAttributes.Archive);//设置文件的属性
获取或者修改文件的属性,都要用到FileAttributes枚举,其枚举值如下:
Archive:文件是存档的。
Hidden:文件是隐藏的。
ReadOnly:文件是只读的。
Normal:文件是正常的。
五,检测文件是否存在
移动文件语法重载原型为:File.Exists(string)
C++中的FILE
需要加入stdio来使用FILE。
格式:FILE *人名 = fopen(filename,type);
filename是文件名
type是指示文件读取方式的字符串:
"r" = read "w" = write "rw" = read\u0026write
定义*name后,便可以使用fprintf(*FILE,string,var1,var2,..)来快速读入读出文件了。
利用FILE* 和fprintf的文件I/O速度是使用fstream文件流的256倍。
C语言中FILE
VC中
在"stdio.h"中有如下定义
struct _iobuf {
char *_ptr; //文件输入的下一个位置
int _cnt; //当前缓冲区的相对位置
char *_base; //指基础位置(即是文件的其始位置)
int _flag; //文件标志
int _file; //文件的有效性验证
int _charbuf; //检查缓冲区状况,如果无缓冲区则不读取
int _bufsiz; //缓冲区的大小
char *_tmpfname; //临时文件名
};
typedef struct _iobuf FILE;
Linux
中FILE
struct file {
/* fu_list becomes invalid after file_free is called and queued via fu_rcuhead for RCU freeing */
union {
struct list_headfu_list;
struct rcu_head fu_rcuhead;
} f_u;
struct pathf_path;
#define f_dentryf_path.dentry
#define f_vfsmntf_path.mnt
const struct file_operations*f_op;
spinlock_tf_lock; /* f_ep_友情链接, f_flags, no IRQ */
atomic_long_tf_计数;
unsigned int f_flags;
fmode_tf_mode;
loff_tf_pos;
struct fown_structf_owner;
const struct cred*f_cred;
struct file_ra_statef_ra;
u64f_version;
#ifdef CONFIG_SECURITY
void*f_证券;
#endif
/* needed for tty driver, and maybe others */
void*private_数据;
#ifdef CONFIG_EPOLL
/* Used by fs/eventpoll.c to link all the hooks to this file */
struct list_headf_ep_友情链接;
#endif /* #ifdef CONFIG_EPOLL */
struct address_space*f_映射;
#ifdef CONFIG_DEBUG_WRITECOUNT
unsigned long f_mnt_write_state;
#endif
};
参考资料

Warning: Invalid argument supplied for foreach() in /www/wwwroot/newbaike1.com/id.php on line 362
目录
概述
IT术语
编程用语
参考资料