C# 带有或的If语句

C# 带有或的If语句,c#,if-statement,C#,If Statement,我正在尝试测试文件,如果希望它测试所有文件,当一个文件不存在时,它将执行代码。我尝试了|,但它似乎不起作用,所以我想知道它是否是我需要使用的正确工具 例如: if (File.Exists("//1.txt") || File.Exists("//2.txt") || File.Exists("//3.txt") ) { //DO NOTHING } else { File.Create("//1.txt"); File.C

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

例如:

    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"); 
    }
所以

如果(这(这是真的)或这(这是真的)或这(这是假的)) {

}

在本例中,您需要“and”(
&&&

您当前的测试表明,如果存在任何文件,则不执行任何操作,否则创建所有三个文件,但实际上您希望测试表明是否存在任何文件(重新)创建它们


尽管您可能应该单独检查每个文件,以便不覆盖现有数据。

在本例中,if语句到达第一个true语句,然后执行
//donothing
部分。如果您的目标是在一个或所有文件不存在的情况下重新创建所有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"); 
}

你需要的是
&
而不是
|
我想你的意思是&&如果你想测试所有这些,为什么会被否决?这是一个问题,你能更具体地解释一下你到底想做什么吗?ChrisF的答案就是这样的。它不是&好像我删除了其中的一个,它不是全部重拍them@JoshuaHodson-它应该-如果不是的话,那么就有别的事情发生了。@JoshuaHodson你要移除哪一个?3.txt?@Gruff这看起来只是问题中的一个输入错误。