创建 exe 文件后文件丢失错误

本文关键字:文件 错误 exe 创建 | 更新日期: 2023-09-27 18:32:53

我创建了一个Windows应用程序项目,它工作正常。在表单加载时,它会读取一个文本文件并将数据打印到表单中的表格中。当我发布并执行它时,它会抛出文件丢失错误。 当我将项目转换为可执行文件时,该文本文件丢失了。该文本文件存在于应用程序的启动路径文件夹中。我在发布时错过了什么吗?

错误: System.IO.FileNotFoundException: Could not find file 'C:'Users''AppData'Local'Apps'2.0'4V17NKV8.EJ8'H5VC3CZ8.AM3'atum..tion_5f39d67ebcfcae03_0001.0000_14487f1ba676fa3d'Data'.

我正在使用Visual Studio 2012和c#项目。

创建 exe 文件后文件丢失错误

我找到了这个错误的答案.实际上我在分配文件路径时犯了错误。以前我分配的文件路径如下:

private void Form1_Load(object sender, EventArgs e)
    {
        StreamReader sr = new StreamReader"E:/123.txt");
        richTextBox1.Text = sr.ReadToEnd();
    }

所以之后 创建可执行文件 ,当我们在其他系统中运行可执行文件时,我们应该将此 txt 文件复制到同一个文件夹 (E:/123.txt)。但这不公平.但是使用安装程序方法我们可以嵌入文件,如果您不想创建安装程序文件并直接 exe 文件意味着执行以下操作。

  1. 通过右键单击项目名称添加文件,然后选择 添加现有文件 。它将在列表中添加文件。

阿拉伯数字。

private void Form1_Load(object sender, EventArgs e)        
    {
        string path;
        path = System.IO.Path.GetDirectoryName(
           System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase);
        path = path.Replace("file:''", "");
        StreamReader sr = new StreamReader(path +"/123.txt");
        richTextBox1.Text = sr.ReadToEnd();
    }

您应该添加 System.Reflection 的命名空间。3.然后发布您的项目,它将使用您发布的数据部署文件。