Visual C# 2005 Express Edition에 기본 파일 I/O 작업을 수행하는 방법

중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.

910356
이 문서가 보관되었습니다. "그대로" 제공되었으며, 업데이트가 되지 않을 것입니다.
이 문서에서는 Microsoft Visual Basic .NET 버전에 304427 참조하십시오.
이 문서에서는 Visual C++ .NET 버전에 307398 참조하십시오.
이 문서에서는 Microsoft Visual C# .NET 버전에 304430 참조하십시오.
이 문서에서는 System.IO Microsoft .NET Framework 클래스 라이브러리의 네임스페이스를 참조합니다.
소개
이 문서에서는 Microsoft Visual C# 2005 Express Edition에 기본 파일 I/O 작업을 수행하는 방법에 대해 설명합니다. 새로운 Microsoft .NET Framework 경우, Microsoft .NET 에서 파일 작업에 대한 개체 모델은 많은 Visual Studio 6.0 개발자는 널리 사용되는 FileSystemObject 개체 모델을 유사합니다 찾을 수 있습니다. 전환을 쉽게 이 문서에서 설명하는 기능은 Microsoft 기술 자료의 다음 문서는 기초로 합니다.
186118Visual Basic FileSystemObject 사용하는 방법
.NET에서 FileSystemObject 개체에 계속 사용할 수 있습니다. FileSystemObject 개체에 구성 요소 개체 모델(COM) 구성 요소이므로 .NET interop 계층을 통해 FileSystemObject 개체에 액세스할 필요합니다. 래퍼를 사용할 경우, .NET 구성 요소에 대한 래퍼를 생성합니다. 그러나 .NET Framework의 다음 클래스를 FileSystemObject 개체에 interop 계층 오버헤드 없이 사용할 경우 사용할 수 없는 기능을 제공합니다.
  • 파일 클래스
  • FileInfo 클래스
  • 디렉터리 클래스
  • DirectoryInfo 클래스
  • 다른 관련된 클래스

요구 사항

다음은 권장되는 하드웨어, 소프트웨어, 네트워크 인프라 및 필요한 서비스 팩의 목록입니다.
  • Microsoft Visual C# 2005 Express Edition 또는 Microsoft Visual Studio 2005

예제 파일 I/O 작업

이 문서의 코드 예제에서는 기본 파일 I/O 작업을 수행하는 방법에 대해 설명합니다. "단계별 예제" 절에서는 아래의 파일 I/O 작업을 보여주는 예제 프로그램을 만드는 방법을 설명합니다.
  • 텍스트 파일을 읽습니다.
  • 텍스트 파일에 씁니다.
  • 파일 정보를 볼 수 있습니다.
  • 디스크 드라이브를 나열하십시오.
  • 폴더 목록을 표시합니다.
  • 파일이 나열되어 있습니다.
참고 다음 코드 예제를 직접 사용하려면 다음 사항을 고려하십시오.
  • System.IO 네임스페이스의 같이 포함해야 합니다.
    using System.IO;
  • 다음과 같이 winDir 변수를 선언해야 합니다.
    string    winDir=System.Environment.GetEnvironmentVariable("windir");
  • 다음과 같이 addListItem 함수를 선언해야 합니다.
    private void addListItem(string value){	this.listbox1.Items.Add(value);}
    참고 선언 및 addListItem 함수를 사용하는 대신, 다음 문을 직접 사용할 수 있습니다.
    this.listbox1.Items.Add(value);

텍스트 파일 읽기

다음 코드 예제에서는 StreamReader 클래스를 사용하여 System.ini 파일에 읽기. 파일의 내용은 ListBox 컨트롤에 추가됩니다. try... catch 블록은 파일이 비어 있을 경우 응용 프로그램을 알리는 데 사용됩니다. 파일 끝에 도달했을 때 이를 확인하는 데 다양한 방법이 있습니다. 이 코드 예제에서는 Peek 메서드를 사용하여 공장으로 읽기 전에 다음 줄을 검사합니다
StreamReader reader = new StreamReader(winDir + "\\system.ini");            try            {                do                {                    addListItem(reader.ReadLine());                }                while (reader.Peek() != -1);            }            catch            {                addListItem("File is empty.");            }            finally            {                reader.Close();            }

텍스트 파일에 쓰기

다음 코드 예제에서는 파일을 만들려면 및 파일에 쓸 StreamWriter 클래스를 사용합니다. 기존 파일이 있으면 기존 파일을 동일한 방법으로. 있는 열 수
StreamWriter writer = new StreamWriter("c:\\KBTest.txt");            writer.WriteLine("File created by using StreamWriter class.");            writer.Close();            this.listBox1.Items.Clear();            addListItem("File written to C:\\KBTest.txt");

파일 정보 보기

다음 코드 예제에서는 FileInfo 개체를 사용하여 파일 속성에 액세스합니다. 이 코드 예제에서는 Notepad.exe 파일이 사용됩니다. 속성을 ListBox 컨트롤을. 에 나타나는
FileInfo FileProps = new FileInfo(winDir + "\\notepad.exe");            addListItem("File Name = " + FileProps.FullName);            addListItem("Creation Time = " + FileProps.CreationTime);            addListItem("Last Access Time = " + FileProps.LastAccessTime);            addListItem("Last Write Time = " + FileProps.LastWriteTime);            addListItem("Size = " + FileProps.Length);            FileProps = null;

목록 디스크 드라이브

다음 코드 예제에서는 시스템에서 논리 드라이브 목록을 검색할 디렉터리 클래스 및 드라이브 클래스를 사용합니다. 이 코드 예제에서는 결과를 ListBox 컨트롤에. 에 나타나는
string[] drives = Directory.GetLogicalDrives();    foreach(string drive in drives)    {        addListItem(drive);    }

목록 폴더

다음 코드 예제에서는 디렉터리 클래스의 GetDirectories 메서드를 사용하여 폴더를. 목록을 검색할
string[] dirs = Directory.GetDirectories(winDir);    foreach(string dir in dirs)        {            addListItem(dir);        }

목록 파일

다음 코드 예제에서는 디렉터리 클래스의 GetFiles 메서드를 사용하여 파일을. 목록을 검색할
string[] files = Directory.GetFiles(winDir);            foreach (string fileName in files)            {                addListItem(fileName);            }
사용자가 파일에 액세스하려고 하면 여러 문제가 발생할 수 있습니다. 파일이 없거나 파일이 사용 중인 수 있습니다. 또한 사용자는 파일이나 사용자가 액세스하려는 폴더에 대한 권한이 없습니다. 코드 작성 및 조항 생성되는 예외를 처리해야 할 때 이러한 가능성을 충분히 고려해야 합니다.

단계별 예제

기본 파일 입출력 작업을 보여주는 예제 프로그램을 만들려면 다음과 같이 하십시오.
  1. Visual C# 2005 Express Edition 또는 Visual Studio 2005 WindowsApplication1 라는 새 Visual C# Windows 응용 프로그램을 만듭니다. 기본적으로 Form1 이라는 폼이 만들어집니다.
  2. 솔루션 탐색기에서 Form1.cs 를 마우스 오른쪽 단추로 클릭한 다음 코드 보기를 클릭하십시오.
  3. 모든 코드를 코드 편집기에서 삭제하십시오.
  4. 다음 코드를 코드 편집기에 붙여 넣습니다.
    using System;using System.IO;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace WindowsApplication1{    public partial class Form1 : Form    {        public Form1()        {            InitializeComponent();        }        private void Form1_Load(object sender, EventArgs e)        {            this.button1.Text = "Read Text File";            this.button2.Text = "Write Text File";            this.button3.Text = "View File Information";            this.button4.Text = "List Drives";            this.button5.Text = "List Subfolders";            this.button6.Text = "List Files";        }        private void button1_Click(object sender, EventArgs e)        {            // How to read a text file.            // try...catch is to deal with a file that has a length of 0 bytes.            this.listBox1.Items.Clear();            StreamReader reader = new StreamReader(winDir + "\\system.ini");            try            {                do                {                    addListItem(reader.ReadLine());                }                while (reader.Peek() != -1);            }            catch            {                addListItem("File is empty.");            }            finally            {                reader.Close();            }        }        private void button2_Click(object sender, EventArgs e)        {            // How to create and write to a text file.            StreamWriter writer = new StreamWriter("c:\\KBTest.txt");            writer.WriteLine("File created by using StreamWriter class.");            writer.Close();            this.listBox1.Items.Clear();            addListItem("File written to C:\\KBTest.txt");        }        private void button3_Click(object sender, EventArgs e)        {            // How to retrieve file properties (example uses Notepad.exe).            this.listBox1.Items.Clear();            FileInfo FileProps = new FileInfo(winDir + "\\notepad.exe");            addListItem("File Name = " + FileProps.FullName);            addListItem("Creation Time = " + FileProps.CreationTime);            addListItem("Last Access Time = " + FileProps.LastAccessTime);            addListItem("Last Write Time = " + FileProps.LastWriteTime);            addListItem("Size = " + FileProps.Length);            FileProps = null;        }        private void button4_Click(object sender, EventArgs e)        {            // How to obtain a list of disk drives.            this.listBox1.Items.Clear();            string[] drives = Directory.GetLogicalDrives();            foreach (string drive in drives)            {                addListItem(drive);            }        }        private void button5_Click(object sender, EventArgs e)        {            // How to obtain a list of folders.            // Example uses Windows folder.            this.listBox1.Items.Clear();            string[] dirs = Directory.GetDirectories(winDir);            foreach (string dir in dirs)            {                addListItem(dir);            }        }        private void button6_Click(object sender, EventArgs e)        {            // How to obtain a list of files.            // Example uses Windows folder.            this.listBox1.Items.Clear();            string[] files = Directory.GetFiles(winDir);            foreach (string fileName in files)            {                addListItem(fileName);            }        }    }}
  5. 솔루션 탐색기에서 Form1.Designer.cs 마우스 오른쪽 단추로 클릭한 다음 코드 보기를 클릭하십시오.
  6. 모든 코드를 코드 편집기에서 삭제하십시오.
  7. 다음 코드를 코드 편집기에 붙여 넣습니다. WindowsApplication1
    namespace WindowsApplication1{    partial class Form1    {        /// <summary>        /// Required designer variable.        /// </summary>        private System.ComponentModel.IContainer components = null;        private string winDir = System.Environment.GetEnvironmentVariable("windir");        /// <summary>        /// Clean up any resources that are being used.        /// </summary>        /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>        protected override void Dispose(bool disposing)        {            if (disposing && (components != null))            {                components.Dispose();            }            base.Dispose(disposing);        }        private void addListItem(string value)        {            this.listBox1.Items.Add(value);        }        #region Windows Form Designer generated code        /// <summary>        /// Required method for designer support - do not modify        /// the contents of this method with the code editor.        /// </summary>        private void InitializeComponent()        {            this.listBox1 = new System.Windows.Forms.ListBox();            this.button1 = new System.Windows.Forms.Button();            this.button2 = new System.Windows.Forms.Button();            this.button3 = new System.Windows.Forms.Button();            this.button4 = new System.Windows.Forms.Button();            this.button5 = new System.Windows.Forms.Button();            this.button6 = new System.Windows.Forms.Button();            this.SuspendLayout();            //             // listBox1            //             this.listBox1.FormattingEnabled = true;            this.listBox1.Location = new System.Drawing.Point(23, 24);            this.listBox1.Name = "listBox1";            this.listBox1.Size = new System.Drawing.Size(525, 251);            this.listBox1.TabIndex = 0;            //             // button1            //             this.button1.Location = new System.Drawing.Point(23, 290);            this.button1.Name = "button1";            this.button1.Size = new System.Drawing.Size(171, 23);            this.button1.TabIndex = 1;            this.button1.Text = "button1";            this.button1.UseVisualStyleBackColor = true;            this.button1.Click += new System.EventHandler(this.button1_Click);            //             // button2            //             this.button2.Location = new System.Drawing.Point(23, 319);            this.button2.Name = "button2";            this.button2.Size = new System.Drawing.Size(171, 23);            this.button2.TabIndex = 2;            this.button2.Text = "button2";            this.button2.UseVisualStyleBackColor = true;            this.button2.Click += new System.EventHandler(this.button2_Click);            //             // button3            //             this.button3.Location = new System.Drawing.Point(200, 290);            this.button3.Name = "button3";            this.button3.Size = new System.Drawing.Size(171, 23);            this.button3.TabIndex = 3;            this.button3.Text = "button3";            this.button3.UseVisualStyleBackColor = true;            this.button3.Click += new System.EventHandler(this.button3_Click);            //             // button4            //             this.button4.Location = new System.Drawing.Point(200, 319);            this.button4.Name = "button4";            this.button4.Size = new System.Drawing.Size(171, 23);            this.button4.TabIndex = 4;            this.button4.Text = "button4";            this.button4.UseVisualStyleBackColor = true;            this.button4.Click += new System.EventHandler(this.button4_Click);            //             // button5            //             this.button5.Location = new System.Drawing.Point(377, 290);            this.button5.Name = "button5";            this.button5.Size = new System.Drawing.Size(171, 23);            this.button5.TabIndex = 5;            this.button5.Text = "button5";            this.button5.UseVisualStyleBackColor = true;            this.button5.Click += new System.EventHandler(this.button5_Click);            //             // button6            //             this.button6.Location = new System.Drawing.Point(377, 319);            this.button6.Name = "button6";            this.button6.Size = new System.Drawing.Size(171, 23);            this.button6.TabIndex = 6;            this.button6.Text = "button6";            this.button6.UseVisualStyleBackColor = true;            this.button6.Click += new System.EventHandler(this.button6_Click);            //             // Form1            //             this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;            this.ClientSize = new System.Drawing.Size(580, 400);            this.Controls.Add(this.button6);            this.Controls.Add(this.button5);            this.Controls.Add(this.button4);            this.Controls.Add(this.button3);            this.Controls.Add(this.button2);            this.Controls.Add(this.button1);            this.Controls.Add(this.listBox1);            this.Name = "Form1";            this.Text = "Form1";            this.Load += new System.EventHandler(this.Form1_Load);            this.ResumeLayout(false);        }        #endregion        private System.Windows.Forms.ListBox listBox1;        private System.Windows.Forms.Button button1;        private System.Windows.Forms.Button button2;        private System.Windows.Forms.Button button3;        private System.Windows.Forms.Button button4;        private System.Windows.Forms.Button button5;        private System.Windows.Forms.Button button6;    }}
  8. 빌드 및 응용 프로그램을 실행하려면 F5 키를 누릅니다.
  9. 다른 작업을 보려면 단추를 클릭하십시오.
참고 Windows Forms 프로젝트를 만들 때 기본적으로 Visual C# 2005 Express Edition 또는 Visual Studio 2005 한 폼을 프로젝트에 추가합니다. Form1 폼이 명명됩니다. 폼을 나타내는 두 개의 파일은 Form1.cs 파일을 Form1.designer.cs 파일 이름이 지정됩니다. Form1.cs 파일을 코드를 작성합니다. Windows Forms 디자이너 코드 Form1.designer.cs 파일에 씁니다.

Windows Forms 디자이너를 Visual C# 2005 Express Edition에서 또는 Visual Studio 2005에 [NULL]에 대한 자세한 내용은 다음 MSDN) Microsoft 개발자 네트워크 (웹 사이트를 방문하십시오.
Visual C# 2005 Express 파일 IO 스트리밍 I/O 샘플 코드 Visual Studio 2005 System.IO

경고: 이 문서는 자동 번역되었습니다

속성

문서 ID: 910356 - 마지막 검토: 01/17/2015 12:29:10 - 수정: 1.3

  • Microsoft Visual Studio 2005 Standard Edition
  • Microsoft Visual Studio 2005 Professional Edition
  • Microsoft Visual Studio 2005 Express Edition
  • Microsoft Visual C# 2005 Express Edition
  • Microsoft Visual Studio 2005 Team System Architect Edition
  • Microsoft Visual Studio 2005 Team System Developer Edition
  • Microsoft Visual Studio 2005 Team System Team Foundation:
  • Microsoft Visual Studio 2005 Team System Test Edition
  • kbnosurvey kbarchive kbmt kbvs2005std kbvs2005mos kbvs2005exp kbvs2005pro kbvs2005search kbio kbhowtomaster kbsample kbstepbystep kbcodesnippet kbcode kbhowto KB910356 KbMtko
피드백