Published on

웹개발 중에 따옴표 처리 문제..

Authors
  • avatar
    Name
    불꽃남자
    Twitter

MySql 쿼리 처러하다 보니 따옴표 처리 이거 장난 아니구나~ ㅜㅜ 특히 이중 따옴표 처리.. ㅜㅜ.. 이것때메 어찌나 헤맷떤지.. 이게 지금 이번뿐이 아니다.. 작년에도 이와 비슷한 문제로 좀 고생했는데...

그때는 쿼트나 떠블쿼트 전부 찾아서 다른문자로 replace 해서 DB로 저장하고, 불러들일때 다시 파싱해서 처리했떤 기억이 있다.

좀 찾아보니.. XML에는 CDATA 와 PCDATA 라는게 있더군.. 암튼 난 그래서, 따옴표(") 를--> " 로 바꿔서 처리했다.. 댓글("+rs.getString(3)+")

그렇다면, 과연 CDATA와 PCDATA 라는게 멀까?.. PCDATA(Parsed Character DATA)는 말 그대로 파서가 해석하는 문자 데이타를 말한다. 쉽게 말하면, XML 문서를 브라우저가 읽을때, 브라우저 XML 파서가 문자열을 해석해서 디스플레이를 한다는 것이다.

예로들면, 아래와 같은

XML & JAVA

XML 은 파서가 해석해서 XML & JAVA 로 치환하여 디스플레이 하는것이다.

그렇다면, CDATA 는 먼가? CDATA는 XML 파서가 해석하지 않고 바로 Application 으로 보내버린다.

즉, 요렇게 섹션을 지정하면 안쪽의 문자 데이터는 파서가 해석을 안한다. 게시판에서 특수문자를 허용하는 경우엔 요렇게 CDATA로 묶어서 처리하면 된다.

특수문자를 정리하면 아래와 같다.

** 3 --> > ex) 5 > 3 --> 5 > 3 &--> & ex)XML & Java -->XML & Java " --> " ex)** -->** ' --> ' ex)** -->**

XML 에서 문자 참조를 할때는 10진수와 16진수를 구별해서 쓸때도 있다. XML 문법은 간단하다.

**&#x(16진수 코드값); &#(10진수 코드값);

스페이스- 16진수: 10진수: 탭- 16진수: &#x9 10진수:

&#45------------ updated 2008.02.25------------- 검색하다 찾아냈다.. 그밖에 특수문자, Escape Sequences

음... 찾은거 중엔.. 이곳이 가장 잘 정리 되어 있다!! http://www.hybridelephant.com/computer/tutorial/spechar.html