Jon*_*rlo 6 c# 64-bit visual-studio-2012
我正在使用安装了Update 3的Visual Studio 2012.我正在使用C#定位.NET framework 4.5.
我有一个像这样开始的方法:
public void Open(System.String filePath)
{
if (!System.IO.File.Exists(filePath))
throw new FileNotFoundException(. . .);
. . .
}
Run Code Online (Sandbox Code Playgroud)
filePath参数的值是这样的:
"C:\\Users\\Jonathan.DeCarlo\\Source\\Repos\\PoliticalClassifier\\src\\PoliticalClassifier.DataSource.Tests\\TestFiles\\Social_Economic_DataMicro.xlsx"
那条路确实存在于我的机器上.此应用程序编译为"任何CPU".我在安装了Windows 7 x64的计算机上运行它.如果我让应用程序作为x64进程运行,FileNotFoundException即使文件存在,也会抛出.如果我强制应用程序作为x86进程运行,则不抛出异常(应该是这种情况).
System.IO.File.Exists(filePath)当应用程序作为x64进程而不是x86进程运行时,为什么返回不同的结果?
感谢您的所有评论。我尝试了其中的一些,发现除了我用原始代码指向的文件之外,我无法重现任何文件的问题。在过去的几天里,我开始发现我的硬盘出现故障。在获得新的硬盘驱动器、重新设置并运行上述程序后,我不再看到这个问题。我不能 100% 确定这一点,但我会假设我尝试打开的文件已被故障硬盘损坏。我为徒劳的追逐道歉。
| 归档时间: |
|
| 查看次数: |
764 次 |
| 最近记录: |