我创建了一个桌面应用程序,可以从应用程序的当前路径加载一些文件,程序可以正常工作,但在从DVD-Rom运行时不会读取文件。
我使用的是Windows 8.1,顺便说一句,我尝试以管理员身份运行该程序,但结果却相同。
这是我的代码的一部分:
public void LoadTable()
{
if (File.Exists("table.bin"))
{
string[] _items = File.ReadAllLines("table.bin");
for (int i = 0; i < _items.Length; i++)
{
string[] x = _items[i].Split(',');
if (x.Length > 5)
{
items.Add(new Item()
{
ID=x[0].Replace("*",""),
ThumbStart = x[1],
ThumbCount= x[2],
PackStart = x[3],
PackCount = x[4]
});
List<string> _cats = new List<string>();
for(int j = 5;j<x.Length;j++) _cats.Add(x[j]);
items[items.Count - 1].Categories = _cats.ToArray();
}
}
}
}
它与我的代码有关或是否有某些窗口设置?
答案 0 :(得分:1)
如果您遇到文件I / O问题,可以使用Sysinternals Suite中的Process Monitor(https://technet.microsoft.com/en-us/library/bb896645.aspx)进行诊断。只需在重现问题时运行该工具,并查找任何失败的I / O结果(可选择过滤以仅显示应用程序中的I / O)。