函数已停止工作“运行代码时出错

时间:2014-03-11 17:47:01

标签: c#

我有一个Windows窗体应用程序,它使用我试图使其可移植的文本文件数据集(即:从外部硬盘驱动器或笔式驱动器运行应用程序不需要将数据集复制到C:\驱动器直接

我改变了

StreamReader fileitem = new StreamReader("c:\\dataset.txt");

进入

StreamReader fileitem = new StreamReader("dataset.txt");

并将数据集复制到exe文件路径(.../bin/debug) 但它显示错误"function has stopped working"! 有什么想法吗?

1 个答案:

答案 0 :(得分:1)

以下是如何获取可执行文件的绝对路径的示例:

static public string AssemblyDirectory
{
    get
    {
        string codeBase = Assembly.GetExecutingAssembly().CodeBase;
        UriBuilder uri = new UriBuilder(codeBase);
        string path = Uri.UnescapeDataString(uri.Path);
        return Path.GetDirectoryName(path);
    }
}

取自this answer

的样本

如果您实现此属性,则可以将代码更新为以下内容:

StreamReader fileitem = new StreamReader(AssemblyDirectory + "dataset.txt");