2个回答
展开全部
别听一楼胡扯!
&是位运算。也就是所谓的同域运算。
如: 0000 0001 & 0000 1001,这种结果就是0000 0001。
一般情况下,我们会使用一种称为位标识的设计:
比如一个文件具有,S,R,H等属性,我们用一个字节的最未一位表示隐藏,第二位表示文档(S),第三位表示只读(R)。我举一个简单的例子,
那么一个只读的,隐藏的文件就可以表示为:0000 0101,因为最后一位定义为隐藏了,它为1时就表示是隐藏文件。
而面向对象设计时,我们再将这个属性也进行一些特殊的处理:
public enum Auttribute
{
H= 0x01,
S =0x02,
R = 0x04,
}
寻么,Auttrivute.H表示是只读属性,而Auttrbute.R表示只读属性。
而当Auttribute = 0x05时,Auttribute & Auttribute.H = 则会得到Auttribute.H。若为0则表示非隐藏,若为1其实也就是Autrribute.H就是隐藏了。
所以这句话执行的最终结果就是查看所有隐藏的文件。
&是位运算。也就是所谓的同域运算。
如: 0000 0001 & 0000 1001,这种结果就是0000 0001。
一般情况下,我们会使用一种称为位标识的设计:
比如一个文件具有,S,R,H等属性,我们用一个字节的最未一位表示隐藏,第二位表示文档(S),第三位表示只读(R)。我举一个简单的例子,
那么一个只读的,隐藏的文件就可以表示为:0000 0101,因为最后一位定义为隐藏了,它为1时就表示是隐藏文件。
而面向对象设计时,我们再将这个属性也进行一些特殊的处理:
public enum Auttribute
{
H= 0x01,
S =0x02,
R = 0x04,
}
寻么,Auttrivute.H表示是只读属性,而Auttrbute.R表示只读属性。
而当Auttribute = 0x05时,Auttribute & Auttribute.H = 则会得到Auttribute.H。若为0则表示非隐藏,若为1其实也就是Autrribute.H就是隐藏了。
所以这句话执行的最终结果就是查看所有隐藏的文件。
展开全部
"&"两边都是true时整体才为true,任何一边为false整体就是false。
FileAttributes文件属性的一个枚举
Normal 正常( Dir 和 SetAttr 的默认值)。对此文件未应用特殊特征。该成员等效于 Visual Basic 常数 vbNormal。
ReadOnly 只读。该成员等效于 Visual Basic 常数 vbReadOnly。
Hidden 隐藏。该成员等效于 Visual Basic 常数 vbHidden。
System 系统文件。该成员等效于 Visual Basic 常数 vbSystem。
Volume 卷标。与 SetAttr 一起使用时此属性无效。该成员等效于 Visual Basic 常数 vbVolume。
Directory 目录或文件夹。该成员等效于 Visual Basic 常数 vbDirectory。
Archive 文件自上次备份后已更改。该成员等效于 Visual Basic 常数 vbArchive。
这些东西在VS的帮助中都有。
FileAttributes文件属性的一个枚举
Normal 正常( Dir 和 SetAttr 的默认值)。对此文件未应用特殊特征。该成员等效于 Visual Basic 常数 vbNormal。
ReadOnly 只读。该成员等效于 Visual Basic 常数 vbReadOnly。
Hidden 隐藏。该成员等效于 Visual Basic 常数 vbHidden。
System 系统文件。该成员等效于 Visual Basic 常数 vbSystem。
Volume 卷标。与 SetAttr 一起使用时此属性无效。该成员等效于 Visual Basic 常数 vbVolume。
Directory 目录或文件夹。该成员等效于 Visual Basic 常数 vbDirectory。
Archive 文件自上次备份后已更改。该成员等效于 Visual Basic 常数 vbArchive。
这些东西在VS的帮助中都有。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询