C#의 파일 저장 대화 상자
이 간단한 가이드는 C#에서 SaveFileDialog
클래스를 사용하여 C# 앱에서 Windows 파일 스토리지로 파일을 저장하는 방법에 관한 것입니다.
C#
의 SaveFileDialog
클래스
사용자는 SaveFileDialog
구성 요소를 사용하여 파일 시스템을 탐색하고 저장할 파일을 선택할 수 있습니다. 대화 상자에는 사용자가 선택한 파일의 이름과 경로가 표시됩니다.
파일을 디스크에 쓰려면 코드를 작성해야 합니다.
SaveFileDialog
클래스 사용 단계
-
첫 번째 단계는 Windows Form 애플리케이션을 만들고
SaveFileDialog
컨트롤을 추가하는 것입니다.런타임에 코드에서
SaveFileDialog
클래스를 사용하거나 디자인 타임에 양식 디자이너를 사용하여SaveFileDialog
컨트롤을 만들 수 있습니다.SaveFileDialog
에는 다른 Windows Forms 컨트롤과 같은 시각적 속성이 없으며 필요하지도 않습니다.디자인 보기 또는 명시적 코드를 통해
SaveFileDialog
컨트롤을 만들 수 있습니다. 두 가지 방법을 모두 살펴보겠습니다.- 코드를 통해
SaveFileDialog
를 만듭니다.SaveFileDialog
를 만드는 코드는 다음과 같습니다.
SaveFileDialog saveDialog = new SaveFileDialog();
위의 코드는
SaveFileDialog
상자 개체를 생성합니다. 이제 이 대화 상자를 표시하기 위해ShowDialog
메서드를 사용합니다.saveDialog.showDialog();
- 디자인을 통해
SaveFileDialog
를 만듭니다. 디자인 타임에 SaveFileDialog 컨트롤을 만들려면 도구 상자에서 Visual Studio의 Form으로SaveFileDialog
컨트롤을 끌어다 놓습니다.
아래 그림은 Form에 드래그 앤 드롭한 후의
SaveFileDialog
를 보여줍니다. - 코드를 통해
-
두 번째 단계는
SaveFileDialog
의 일부 속성을 설정하는 것입니다. 코딩 요구 사항에 따라 사용할 수 있는 다양한 속성이 있습니다.속성 창을 통해 속성을 설정하는 것이 가장 간단한 옵션입니다. 아래 그림은 속성 창의 모습을 보여줍니다.
이 창에서 다른 속성을 설정할 수 있습니다. 이러한 속성 중 일부에 대해 논의해 보겠습니다. -
초기 디렉토리
초기 디렉터리
속성은 파일 저장을 위한 대화 상자가 나타날 때 열릴 기본 디렉터리를 지정합니다. 이 속성은 위에 표시된 속성 창이나 다음과 같은 코드를 통해 설정할 수 있습니다.saveDialog.InitialDirectory = @"D:/New Folder";
‘제목’
제목
속성은 파일 저장을 위해 나타나는 대화 상자에 표시할 제목을 설정합니다.saveDialog.Title = "Save Your File Here";
‘필터’
파일 저장 대화 상자의
필터
속성은 파일 저장 대화 상자를 사용하여 저장할 수 있는 파일 종류를 제한합니다. 예를 들어 사용자를 제한하려는 경우 이진 .bin 파일을 저장하기 위한 필터 옵션만 지정할 수 있습니다.saveDialog.Filter = "bin files (*.bin)|*.bin|All files (*.*)|*.*";
다음은 파일 저장을 위해 설정할 수 있는 일부 속성입니다. 다른 많은 것들이 있지만 이 기사에서는 이러한 중요한 것들에 대해 논의할 것입니다.
-
속성을 설정한 후 파일을 디스크에 저장하는 코드를 작성할 수 있습니다. 이를 위해
OpenFile
방법이 사용됩니다. 이 메서드는 파일을 디스크에 저장하는 데 사용할 수 있는Stream
개체를 반환합니다.Stream fileStream; if (saveDialog.ShowDialog() == DialogResult.OK) { if ((fileStream = saveDialog.OpenFile()) != null) { // You can write the code to write the file here. fileStream.Close(); } }
이제 전체 코드를 요약하여 파일을 저장해 보겠습니다.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace WinFormsApp1 {
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e) {
SaveFileDialog saveDialog = new SaveFileDialog();
saveDialog.InitialDirectory = @"C:\Users\user01\OneDrive\Documents";
saveDialog.Title = "Save Your File Here";
saveDialog.Filter = "bin files (*.bin)|*.bin|All files (*.*)|*.*";
Stream fileStream;
if (saveDialog.ShowDialog() == DialogResult.OK) {
if ((fileStream = saveDialog.OpenFile()) != null) {
// You can write the code to write the file here.
fileStream.Close();
}
}
}
}
}
버튼을 클릭하면 저장 대화 상자가 열리도록 버튼의 클릭 이벤트에 이 코드를 작성했습니다. 그러면 다음과 같은 출력이 생성됩니다.
파일 저장
버튼을 클릭하면 다음 팝업 대화 상자가 나타납니다.
위치가 “Documents” 폴더로 설정되어 있고 파일 유형이 “Bin 파일"로 설정되어 있는 대화 상자를 볼 수 있습니다.
결론
사용자는 Windows 파일 저장 대화 상자를 시작하고 SaveFileDialog
컨트롤을 사용하여 파일을 저장할 수 있습니다. 이 문서에서는 Windows 파일 저장 대화 상자를 사용하고 Windows Forms 애플리케이션에서 해당 속성을 구성하는 방법에 대해 설명했습니다.