首页 > 解决方案 > 尝试在文件名中使用变量时出现“找不到路径的一部分”错误

问题描述

尝试在 C# 中使用 Filestream 创建文件时出现此错误。

当我使用:

{ 
  string loc1 = @"C:\Users\www14\AiLog\Fitness:200.txt";

  FileInfo fi = new FileInfo(loc1);

 using (FileStream fs = fi.Create())
}                

目录中的文件:C:\Users\www14\AiLog\Fitness:200.txt 成功创建,并出现。

但是,我需要这个数字 200 作为变量,而不是手写数字,所以我尝试了以下操作:

            string loc1 = @"C:\Users\www14\AiLog\";

            string loc3 ="Fitness:"+BestNetworkFitness.ToString()+".txt";

            string loc2 = Path.Combine(loc1, loc3);


            FileInfo fi = new FileInfo(loc2);

            using (FileStream fs = fi.Create())
            { }

然后 DirectoryNotFoundException: 找不到路径“C:\Users\www14\AiLog\Fitness:3.73398.txt”的一部分。

似乎每当我尝试在名称中使用变量时,它都会中断。

编辑:哦,谢谢指出,我的 loc1,loc2 搞砸了。我也删除了':',它现在可以工作了!

标签: c#file

解决方案


您正在尝试使用 loc1 而不是 loc2 创建。

此外,在 Windows 上,':' 不是文件名中的有效字符,至少在我尝试时不是。


推荐阅读