gpt4 book ai didi

c# - 在 C# 应用程序中打开文本文件

转载 作者:太空宇宙 更新时间:2023-11-03 21:46:57 27 4
gpt4 key购买 nike

在编程方面我仍然是初学者,这是我按照 C# 教程开发的一个小应用程序。

private void viewImagesToolStripMenuItem_Click(object sender, EventArgs e)
{

string openedfile = "";

openfd.Title = "Insert a text file";
openfd.InitialDirectory = "C:";
openfd.FileName = "";
openfd.Filter = "text files|*.txt|word documents|*.doc|allfiles|*.*";


if (openfd.ShowDialog() == DialogResult.Cancel)

{
MessageBox.Show("Operation canceled");
}

if (openfd.ShowDialog() != DialogResult.Cancel)

{
openedfile = openfd.FileName;
richTextBox1.LoadFile(openedfile,RichTextBoxStreamType.PlainText);
}

在执行此操作时,我注意到如果我仅更改同一个应用程序的代码顺序 2 行 -

   string openedfile = "";
openedfile = openfd.FileName;

像下面这样它会在调试时抛出这样的错误——空路径名是不合法的。

    private void openToolStripMenuItem_Click(object sender, EventArgs e)
{


openfd.Title = "Insert a text file";
openfd.InitialDirectory = "C:";
openfd.FileName = "";
openfd.Filter = "text files|*.txt|word documents|*.doc|allfiles|*.*";

**string openedfile = "";
openedfile = openfd.FileName;**


if (openfd.ShowDialog() == DialogResult.Cancel)

{
MessageBox.Show("Operation canceled");
}

if (openfd.ShowDialog() != DialogResult.Cancel)

{

richTextBox1.LoadFile(openedfile,RichTextBoxStreamType.PlainText);
}

没有办法理解这些类型情况下的错误。编写这样的应用程序的具体顺序是什么?

最佳答案

好吧,这个想法很简单,你不能使用一个没有被初始化的变量。在你的情况下,同样的事情正在发生。在你的第一个代码中 openedfile = openfd.FileName;对话显示后正在执行。因此文件名正确。但是在第二个 openedfile = openfd.FileName;在显示对话之前正在初始化。由于没有对话,名称为空,因此会出错。

注意。我没有以技术方式使用初始化词。

关于c# - 在 C# 应用程序中打开文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16476882/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com