ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • C# - WindowForm 메모장 파일 생성, 내용 추가, 수정하기(WindowForm, MessageBox, MessageBoxButtons, File.WriteAllText, File.ReadAllText)
    C# 2022. 1. 22. 14:14
    반응형

    회사에서 C#을 사용하게 되어 처음해보지만 공부하게 되었습니다.

     

     

    공부하면서 예제 및 개념을 정리하고 복습하고자 포스팅합니다.

     

     

    윈도우 폼을 사용해 메모장을 생성하고 내용 추가 수정이 가능한 프로그램을 구현하였습니다.

     

    메모장에서 수정된 내용이 윈도우 폼에서도 출력되며

     

    여러가지 조건에 따라 다른 MessageBox가 출력되도록 했습니다.

     

     

     

    내용 입력시 결과 창과 메모장에 내용 입력된다.

     

     

     

    결과 창에서 수정 가능

     

     

    해당 메모장에 가보면 내용이 수정되어 있다.

     

     

    [Form1.cs]

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    using System.IO;
    
    namespace WinFormExam01
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
    
    
            String path = @"C:\winFormFile.txt";
    
            private void button1_Click(object sender, EventArgs e)
            {
                
    
                if (!File.Exists(path)){
                    // 파일 없으면 파일 생성
                    string[] createText = {};
                    result.Text = textBox1.Text;
    
                    File.WriteAllText(path, textBox1.Text);
                    textBox1.Text = "";
                    MessageBox.Show("파일생성/입력완료");
                }
                else if (textBox1.Text == "")
                {
                    MessageBox.Show("추가할 내용을 입력하세요.");
                }
                else
                {
                    String readTxt = File.ReadAllText(path);
                    if(readTxt == "")
                        result.Text = readTxt + textBox1.Text;
                    else
                        result.Text = readTxt + Environment.NewLine + textBox1.Text;
    
                    File.WriteAllText(path, result.Text); //WriteAllText는 기존에 파일이 있으면 덮어씀
                    textBox1.Text = "";
                    MessageBox.Show("입력완료");
                }
            }
    
            private void button2_Click(object sender, EventArgs e)
            {
                if (!File.Exists(path))
                {
                    MessageBox.Show("수정할 파일이 없습니다.");
                }
                else if (result.Text == "")
                {
                    string message = "입력한 내용이 없어 모두 삭제하게 됩니다." + Environment.NewLine + "수정하시겠습니까?";
                    string title = "경고";
                    MessageBoxButtons buttons = MessageBoxButtons.OKCancel;
                    DialogResult dialogResult = MessageBox.Show(message, title, buttons);
                    if (dialogResult == DialogResult.OK)
                    {
                        File.WriteAllText(path, result.Text);
                        MessageBox.Show("수정완료");
                    }
                    else
                    {
                    }
                }
                else
                {
                    File.WriteAllText(path, result.Text);
                    MessageBox.Show("수정완료");
                }
            }
        }
    }
    300x250

    댓글

Designed by Tistory.