此问题已回答。我建议下面的sumit_programmers解决方案。目前,我已经删除了我的代码,认为它比有用的更令人困惑。当我进一步开发它时,也许我会在这里发布我的代码,并提供一些评论。用C在富文本框中打开文件#
您可能也有兴趣回答Save text from rich text box with C#这个问题。有一个答案提醒了这个问题被接受的答案。代码应该可以工作,但是它是由我编写的,所以可能会出现一些错误或缺少信息。
更新:我改进了一些代码(至少我是这么认为的)。 “Encoding.Default”似乎适用于大多数常见的编码,如ANSI。如果编码是没有字节顺序标记(BOM)的UTF-8,那么似乎“Encoding.Default”不起作用。欲了解更多信息,请登录informit.com/guides。这里是我现在使用的代码:
private void fileOpen_Click(object sender, EventArgs e)
{
using (OpenFileDialog dlgOpen = new OpenFileDialog())
{
try
{
// Available file extensions
dlgOpen.Filter = "All files(*.*)|*.*";
// Initial directory
dlgOpen.InitialDirectory = "D:";
// OpenFileDialog title
dlgOpen.Title = "Open";
// Show OpenFileDialog box
if (dlgOpen.ShowDialog() == DialogResult.OK)
{
// Create new StreamReader
StreamReader sr = new StreamReader(dlgOpen.FileName, Encoding.Default);
// Get all text from the file
string str = sr.ReadToEnd();
// Close the StreamReader
sr.Close();
// Show the text in the rich textbox rtbMain
rtbMain.Text = str;
}
}
catch (Exception errorMsg)
{
MessageBox.Show(errorMsg.Message);
}
}
}
,我没有看到代码被添加到那里。请在打开dilog框后添加它,我会给出一个示例代码,这可能会有所帮助,请参阅代码,现在编辑它。 – 2010-09-20 09:33:32
我现在试过你的代码。它很棒!非常感谢!! – matsolof 2010-09-21 14:19:16
它是我的荣幸,快乐编码:) – 2010-09-21 14:20:53