# down2Text (method)

> 시트의 내용을 `txt` 또는 `csv` 파일로 다운로드합니다.
> 사용 전 서버모듈 설치와 `/plugins/ibsheet-excel.js` 스크립트 로드가 필요합니다.
> 이 함수를 호출하면 `Cfg.Export` 속성에 지정한 `Down2Text.jsp`(또는 `Down2Text.aspx`)가 호출되며, 이 jsp 파일이 시트 정보(컬럼 정의 등)와 데이터를 받아 텍스트 파일을 생성해 클라이언트로 전송합니다.
> 시트마다 반복 설정이 번거로우면 IBSheet.CommonOptions로 공통 적용할 수 있습니다.

### Syntax

    void down2Text( param );

### Parameters

Name | Type | Required | Description
--- | --- | --- | ---
fileName | `string` | 선택 | 다운로드 받을 파일명입니다. 확장자를 설정하지 않으면 `txt` 파일로 다운로드 됩니다.
rowDelim | `string` | 선택 | text파일을 만들때 행 구분자(기본은 줄넘김 문자: `"\r\n"`)
colDelim | `string` | 선택 | txt 다운로드 일 경우(`default: \t(탭문자)`, csv 다운로드 일 경우(`default: ,(콤마)` 업로드되는 파일에 따라 기본 구분자가 변경됩니다.
downRows | `string` | 선택 | 다운로드 받을 행 인덱스(구분자 "|"로 연결 ex: "1|3|4|5|7")
downCols | `string` | 선택 | 다운로드 받을 열 Name(구분자 "|"로 연결 ex: "amt|qty1|qty2|qty3|years")
downHeader | `boolean` | 선택 | 헤더행을 다운로드 받을지 여부 `0(false)`:다운로드 시 헤더행 미포함 `1(true)`:다운로드 시 헤더행 포함 (`default`)
downSum | `boolean` | 선택 | 합계행도 다운로드 받을지 여부 `0(false)`:합계 행 다운로드 시 미포함 `1(true)`:합계 행 다운로드 시 포함 (`default`)
downTreeHide | `boolean` | 선택 | tree를 사용하는 경우, 접혀진 행도 엑셀에 다운로드 할지 여부를 설정합니다. `0(false)`:접혀진 행(자식노드)들 다운로드 대상 제외 (`default`) `1(true)`:접혀진 행(자식노드)들 다운로드 대상 포함
reqHeader | `object` | 선택 | 서버 전송 헤더에 사용자가 지정한 헤더 정보를 설정합니다.
downloadEncoding | `string` | 선택 | 다운로드받는 텍스트 파일의 인코딩 형식을 지정합니다. UTF-8(BOM) 설정시 BOM을 삽입한 UTF-8 인코딩 형식으로 텍스트 파일을 다운로드합니다. (`default: "txt: UTF-8, csv: EUC-KR"`)
extendParam | `string` | 선택 | 서버로 전달해야 하는 내용이 있는 경우 `GET` 방식의 `QueryString`으로 연결하여 서버로 같이 전달됩니다. (ex: `sheet.down2Excel({extendParam: "sido=서울시&sigungu=관악구"}`)
extendParamMethod | `string` | 선택 | `extendParam`의 내용을 `GET` 또는 `POST`로 전달할지를 설정합니다.(`default: "GET"`)
useXhr | `boolean` | 선택 | xhr 통신을 이용해 파일을 다운로드받습니다. `0(false)`:xhr 통신 사용 안함 (`default`) `1(true)`:xhr 통신 사용

### Return Value

none

### Example

    //1. text 확장자로 다운로드
    sheet.down2Text({fileName:"yearsProfit.txt"});

    //2. csv 확장자로 다운로드
    sheet.down2Text({fileName:"yearsProfit.csv", colDelim:","});

### downloadEncoding 설정시 유의사항

`downloadEncoding`을 `UTF-8`로 설정해 csv 파일을 다운로드하시면 엑셀로 열였을 때 한글이 깨지는 현상이 발생합니다.
엑셀로 열었을 때 한글이 깨지는 현상을 예방하면서 `UTF-8` 인코딩을 적용하기 위해서는 `downloadEncoding`을 `UTF-8(BOM)`으로 설정해주세요 (서버모듈 1.1.18 버전 이후 설정 가능).

### csv 다운로드시 기본 인코딩에 관해

엑셀 플러그인 1.0.21 버전 이후로 csv 다운로드시 기본 인코딩 형식이 EUC-KR에서 UTF-8(BOM)으로 변경되었습니다.
그런데 해당 인코딩 형식은 서버모듈 1.1.18 버전 이후로 지원되는 형식이기에, 엑셀 플러그인 1.0.21 버전을 사용하시며 down2Text 기능을 사용하시려면 반드시 서버모듈 버전을 1.1.18 버전 이후의 버전으로 업그레이드하시거나 downloadEncoding 옵션을 UTF-8(BOM) 이외의 값으로 별도 설정해주셔야 됩니다.

### Read More

- AutoExcelMode cfg
- down2Excel method
- down2Pdf method
- exportData method
- loadText method
- onBeforeExport event
- onExportFinish event

### Since

product | version | desc
--- | --- | ---
excel | 0.0.0 | 기능 추가
excel | 0.0.8 | `reqHeader` 기능 추가
servermodule | 1.1.18 | `downloadEncoding: UTF-8(BOM)` 설정 추가
excel | 1.0.21 | csv 다운로드시 디폴트 인코딩 형식 `EUC-KR`에서 `UTF-8(BOM)`으로 변경