每当我尝试将自定义文件打开到文本框或显示代码的东西时。它永远不会奏效,我不确定我做错了什么。 我希望我的程序在打开文件时显示文件内部的内容,我有以下内容:
private void button1_Click(object sender, EventArgs e)
{
//Show Dialogue and get result
Stream myStream = null;
OpenFileDialog openFileDialog1 = new OpenFileDialog();
openFileDialog1.InitialDirectory = "c:\\";
openFileDialog1.Filter = "rbt files (*.rbt)|*.rbt|All files (*.*)|*.*";
openFileDialog1.FilterIndex = 2;
openFileDialog1.RestoreDirectory = true;
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
try
{
if ((myStream = openFileDialog1.OpenFile()) != null)
{
using (myStream)
{
File.WriteAllText("", CodeBox.Text);
}
}
}
catch (Exception ex)
{
MessageBox.Show("RBT7 file open");
}
}
}
它只在消息框中显示RBT7,这不是我想要的,我希望打开文件并将其信息显示在某种显示代码的文本框中。
答案 0 :(得分:2)
请阅读documentation for File.WriteAllText。
第一个参数:
路径:要写入的文件。
你传递的是""
。那不是一条路。您是否尝试将文件中的所有文字写入CodeBox.Text
或将CodeBox.Text
中的所有文字写入文件?
在评论中,您指出前者。试试这个:
string[] lines = System.IO.File.ReadAllLines(@"your file path");
foreach (string line in lines)
{
CodeBox.Text += line;
}
您尚未显示CodeBox
的代码,因此我无法保证此结果。
答案 1 :(得分:0)
试试这个:
替换此代码
if ((myStream = openFileDialog1.OpenFile()) != null)
{
using (myStream)
{
File.WriteAllText("", CodeBox.Text);
}
}
用这个
{
CodeBox.Text = File.ReadAllText(openFileDialog1.FileName);
}