如果声明带或

时间:2016-01-04 20:56:07

标签: c# if-statement

我正在尝试测试文件,如果希望测试所有文件,当一个文件不存在时,它会执行代码。我尝试了||,但它似乎没有用,所以我想知道它是否是我需要使用的正确的。

示例:

    if (File.Exists("//1.txt") || File.Exists("//2.txt") || File.Exists("//3.txt") )
    {
        //DO NOTHING
    }
    else
    {
    File.Create("//1.txt");
    File.Create("//2.txt");
    File.Create("//3.txt"); 
    }

所以,

if(This(true))或This(true)或This(FALSE)) {

}

2 个答案:

答案 0 :(得分:5)

在这种情况下,你想要“和”(&&)。

您当前的测试表明,如果任何文件存在什么都不做,否则创建所有三个,但您实际上希望测试说明是否存在任何文件(重新创建)它们。

虽然您可能应该单独检查每个文件,以免覆盖现有数据。

答案 1 :(得分:1)

在这种情况下,if语句到达第一个真实语句,然后执行//DO NOTHING部分。如果您的目标是在其中一个或所有文件不存在的情况下重新创建所有3个文件:

if (!File.Exists("//1.txt") || !File.Exists("//2.txt") || !File.Exists("//3.txt") )
{
    File.Create("//1.txt");
    File.Create("//2.txt");
    File.Create("//3.txt"); 
}