'C# 텍스트 파일 읽어오기 listView'에 해당되는 글 1건

728x90

텍스트 파일을 읽어서 ListView 에 뿌리는 예제 코드다.

텍스트 파일의 인코딩 방식은 default 방식인 ANSI 이고, listView 를 직접 선택할 수 있게 코드를 작성했다.

파일을 Line 단위로 읽어서

Split 구분자로 칼럼 구분을 하고, 칼럼 구분된 배열 요소를 ListView 에 저장한다.


private void getTextFile_Click(object sender, EventArgs e)
{
    using (OpenFileDialog dlg = new OpenFileDialog())
    {
        dlg.Filter = "TextFile (*.txt) | *.txt";
        if (dlg.ShowDialog() == DialogResult.OK)
        {
            TextFileRead(dlg.FileName, listView1);
        }
    }
}

public void TextFileRead(string fileName, ListView LV)
{
    string delimiter = "/";  // 구분자
    using (var sr = new StreamReader(fileName, System.Text.Encoding.Default, true))
    {
        string line = null;
        LV.Items.Clear();  // 데이터 초기화
        while ((line = sr.ReadLine()) != null)
        {
            string[] columns = line.Split(new string[] { delimiter }, StringSplitOptions.None);

            ListViewItem lvt = new ListViewItem(columns[0]);
            lvt.SubItems.Add(columns[1]);
            lvt.SubItems.Add(columns[2]);
            LV.Items.Add(lvt);
        }
        sr.Close();
    }
}


칼럼의 갯수를 동적으로 하고자 한다면

ListViewItem lvt = new ListViewItem(columns[0]);
for (int col = 1; col < columns.Length; col++)
{
    lvt.SubItems.Add(columns[col]);
}
LV.Items.Add(lvt);
로 코드를 변경해주면 된다.


블로그 이미지

Link2Me

,