不是最好的代碼,但它應該工作。理想情況下,您可以將邏輯分爲兩種方法,一種是檢查文件是否存在,另一種是文本文件(返回布爾值),另一種是在檢查函數返回true時讀取內容並用內容填充文本框。
編輯:這是更好的:
private void button3_Click(object sender, EventArgs e)
{
string filePath = textBox1.Text;
bool FileValid = ValidateFile(filePath);
if (!IsFileValid)
{
MessageBox.Show(string.Format("File {0} does not exist or is not a text file", filePath));
}
else
{
textbox2.Text = GetFileContents(filePath);
}
}
private bool IsFileValid(string filePath)
{
bool IsValid = true;
if (!File.Exists(filePath))
{
IsValid = false;
}
else if (Path.GetExtension(filePath).ToLower() != ".txt")
{
IsValid = false;
}
return IsValid;
}
private string GetFileContents(string filePath)
{
string fileContent = string.Empty;
using (StreamReader reader = new StreamReader(filePath))
{
fileContent = reader.ReadToEnd();
}
return fileContent;
}
你的意思是顯示一個錯誤,如果文本文件不存在?在這種情況下,您需要在創建新的流讀取器之前首先檢查文件是否存在。一般來說,你的問題不是很理解。 – 2012-04-21 15:39:38
不,我的意思是,如果該文件不可讀因爲如果我運行按鈕它顯示的文本文件在richtextbox的內容,但如果我嘗試打開一個doc文件,它不能顯示richtextbox上的內容 – 2012-04-21 15:45:59