728x90

줄바꿈을 처리할 때, 캐리지리턴이나 라인피드 문자로 처리하게 되는데,

이는 문자열을 다루는 프로그램마다 각기 방식이 다르다.

캐리지리턴 : \r
라인피드 : \n

일반적으로 \r\n 은 DOS/Windows 에서 줄바꿈을 처리할 때 사용하는 방식이고,
\n 은 Unix, C, Perl 등에서 줄바꿈에 사용하는 개행문자이다.

Flex에서 TextArea는 특이하게도 \r만으로도 개행을 시행하는데, 물론 \n만으로도 개행이 가능하다.
\r\n 은 두 줄을 띄워버린다.

따라서, Dos/Windows 프로그램으로 작성한 글을 받아서 TextArea에 출력할 때, 한 줄 개행이 두 줄로 개행되어 버리는 증상이 발생한다.

이때는 아래와 같이 처리하여 정상적인 출력을 가능하게 할 수 있다.


var rawString:String;
textArea.text = rawString.replace(/\r\n/g, "\r");

replace 첫번째 인자는 정규표현식이다. double qoute를 넣지 말자.
두번째 인자는 바꿀 String이다.

728x90

'Flex' 카테고리의 다른 글

이미지가 보여지지 않을 때  (0) 2012.07.29
flexlib  (0) 2012.07.29
오라클 날짜, 시간으로 조회  (0) 2012.07.29
swf파일 '개체가 필요합니다' 에러  (0) 2012.07.29
플렉스 스타일 미리보기  (0) 2012.07.29

+ Recent posts