【发布时间】:2010-09-18 20:49:45
【问题描述】:
这个问题已经回答了。我在下面推荐 sumit_programmers 解决方案。现在,我已经删除了我的代码,认为它比有用更令人困惑。当我进一步开发它时,也许我会在这里发布我的代码,以及一些 cmets。
您可能还对问题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);
}
}
}
【问题讨论】:
标签: c# winforms file-io richtextbox