ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • C# 텍스트 파일 읽기 (한글 깨짐)
    C# 2016. 12. 1. 11:16

    C#에서 txt파일을 읽어오는 방법입니다. 



    ReadAllLines 는 \n 을 기준으로 한 줄씩 불러오는 것이며, 이는 각각 string배열의 원소로 들어갑니다.


    ReadAllText 는 txt파일을 한번에 string 형으로 불러오는 것입니다.



    이 둘은 호출하는 법이 같고, 반환형만 다르기 때문에 하나를 기준으로 설명해 드리겠습니다.


    ReadAllLines(파일 경로); 가 호출하는 기본적인 방법입니다. 


    허나 이 방법으로 호출하면 한글이 깨지는 일이 발생하기도 하는데요, 그럴 때는 Encoding 방식을 정해주어야 합니다.


    ReadAllLines(파일 경로, Encoding.~); 이 Encoding 방식을 정해주는 방법입니다.


    한글이 깨질 때에는 Encoding.Default로 설정해 주시면 됩니다.


    ※ AppDomain.CurrentDomain.BaseDirectory 는 실행파일이 있는 절대경로 입니다.



    private void ReadPeopleName()

    {

    string[] lines = System.IO.File.ReadAllLines(AppDomain.CurrentDomain.BaseDirectory + "test.txt", Encoding.Default);

    // string array


    foreach (string temp in lines)

    {

    System.Console.WriteLine(temp);

    }


    /*

    string text = System.IO.File.ReadAllText(AppDomain.CurrentDomain.BaseDirectory + "test.txt", Encoding.Default);

    // string


    System.Console.WriteLine(text);

    */

    }



    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    private void ReadPeopleName()
    {
        string[] lines = System.IO.File.ReadAllLines(AppDomain.CurrentDomain.BaseDirectory + "test.txt", Encoding.Default);
        // string array
        foreach (string temp in lines)
        {
            System.Console.WriteLine(temp);
        }
     
        /*
        string text = System.IO.File.ReadAllText(AppDomain.CurrentDomain.BaseDirectory + "test.txt", Encoding.Default);
        // string
        System.Console.WriteLine(text);
        */
     
    }
    cs



    댓글

GiGong