将TextBox内容保存在文本文件C#中

时间:2014-02-01 07:53:09

标签: c# openfiledialog savefiledialog

我创建了这个表单,允许我打开一个txt文件并将内容放在TextBox中。 我希望能够修改文本框中的内容,然后使用SaveFileDialog保存它。 这是我的代码

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1(){
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e){
            if (openFileDialog1.ShowDialog() == DialogResult.OK){
                System.IO.StreamReader input = new
                System.IO.StreamReader(openFileDialog1.FileName);
                TextBox_stampa_contenuto.AppendText(input.ReadToEnd());
                input.Close();
            }
        }

        private void salva_file_Click(object sender, EventArgs e){
            saveFileDialog1.ShowDialog();
        }

        private void saveFileDialog1_FileOk(object sender, CancelEventArgs e){
            string name = saveFileDialog1.FileName;
            File.WriteAllText(name, TextBox_stampa_contenuto.Text);

        }
    }

}

当我运行它时,它可以完美地打开文件,但在我修改它并尝试保存后它不起作用。内容保持不变。有办法解决它吗?此外,我如何将文本放在文本框中处于写入模式而不是附加模式。 感谢。

1 个答案:

答案 0 :(得分:3)

试试这个:

解决方案1:如果您想将Textbox的内容保存到TextFile中,则需要检查DialogResult的{​​{1}}返回类型。

SaveDialog

解决方案2:如果要将文件文本插入文本框而不添加,则需要将文件字符串分配到TextBox private void salva_file_Click(object sender, EventArgs e) { DialogResult result = saveFileDialog1.ShowDialog(); if (result == DialogResult.OK) { string name = saveFileDialog1.FileName; File.WriteAllText(name, TextBox_stampa_contenuto.Text); } } 属性。

Text