繁体   English   中英

在 C# 中将 .txt 文件打开到 RichTextBox 中

[英]Open a .txt file into a richTextBox in C#

我希望能够将一个 .txt 文件打开到 c# 中的 Richtextbox 中,并打开一个名为“notes”的全局变量,但不知道如何执行此操作。 这是我目前的代码:

OpenFileDialog opentext = new OpenFileDialog();
if (opentext.ShowDialog() == DialogResult.OK)
{
    richTextBox1.Text = opentext.FileName;
    Globals.notes = opentext.FileName;
}

唯一的问题是它既没有出现在 Richtextbox 中,也没有出现在全局变量中,并且全局允许它以另一种形式在另一个 Richtextbox 中查看。 所以请你帮忙,理想情况下 .txt 文件进入两者,

谢谢

您是说要显示文本还是文件名?

richTextBox1.Text = File.ReadAllText(opentext.FileName); 
Globals.notes = richTextBox1.Text;

您可能还想将其更正为:

if (opentext.ShowDialog() == DialogResult.OK)

在c#中没有全局变量。 您可以获得的最接近的结果是使变量“ public static ”。 但是更好的解决方案是使它成为您可以访问的对象(例如主窗口类)的实例变量。

if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
    System.IO.StreamReader sr = new System.IO.StreamReader(openFileDialog1.FileName);
    richTextBox1.Text = sr.ReadToEnd();
    sr.Close();
}

尝试使用它,我将它用于聊天程序,并且效果很好,您可以将计时器速率设置为所需的任何值。 您也不必使用计时器,可以有一个按钮来启动RTF文本框的刷新。

    private void refreshRate_Tick(object sender, EventArgs e)
    {
        richTextBox1.Text = File.ReadAllText(@"path.txt");
    }

希望这可以帮助!

OpenFileDialog控件的FileName属性仅提供用户选择的文件的完整路径。 为了读取此文件的内容,您将需要使用File.ReadAllText类的方法。

我希望,我没有迟到。 似乎有类似的东西:

OpenFileDialog opentext = new OpenFileDialog();
if (opentext.ShowDialog() == DialogResult.OK)
{
    string selectedFileName = opentext.FileName;
    richTextbox.LoadFile(selectedFileName, RichTextBoxStreamType.UnicodePlainText);
}

参考文献

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM