귤 IT 코딩(3)
-
[C언어] KSC5601(EUC-KR)만 입력 받고 나머지는 공백으로 채우기
앞서 인코딩 관련된 얘기를 했는데 인코딩의 중요성에 대해서는 설명하고 이를 실제로 코드 상에서 어떻게 적용되는지 설명하지 않아서 인코딩 관련된 내용을 좀 더 작성하고자 합니다. 포로그램 상에서 어떤 인코딩을 적용할지 정한 후에는 이에 맞게 입출력이 가능하고 오류처리를 적용하는 것 또한 중요합니다. 어떠한 오류로 인해 입력이 원하지 않는 인코딩 방식으로 들어왔을 때 이를 받아주지 않도록 프로그램을 작성해야 합니다. 저는 확실한 안정성을 위해 EUC-KR을 프로그램에 설정했습니다. 그렇기 때문에 db에서도 저장될 때 완성형으로 저장될 수 있게 누가 어떻게 입력을 하던 프로그램은 KSC5601만 받도록 오류처리 해줬습니다. 먼저 전체 코드는 아래와 같습니다. #include #include #include i..
2022.03.02 -
KSC5601, EUC-KR, UTF-8 Differences
포로그램에서 입력값을 받을 때 간단한 것 같지만 은근 골치 아프고 문제 되는 부분이 인코딩(encoding) 부분인 것 같습니다. 입력값이 깨진 상태로 입력값을 받으면 처리하는 과정에서 오류가 발생하게 됩니다. 이를 방지하기 위해 KSC5601 형태의 표준만 받도록 오류처리를 해줘야 합니다. 먼저 KSC5601이란, 한국공업표준 정보처리 분야의 5601 표준안으로 한글 완성형 표준(한글 2,350자 표현)을 따르고 있습니다. 예를 들어, '가'는 0xB0A1이고 '니'는 0xB4CF입니다. 표 찾아서 참고하시길 바라겠습니다. (전각 문자/기호/자소/선문자 0xA180 ~ 0xAFFF 한글 영역 0xB0A1 ~ 0xC9FF 한자 영역 0xCA80 ~ 0xFDFF) 그렇다면 EUC-KR이랑 차이가 무엇일까요..
2022.02.25 -
서버로 메일 전송 시 HTML에 느낌표(!)가 붙는 에러/Why unnecessary exclamation mark(!) is randomly inserted in HTML using mail server
결론부터 이야기하자면, rfc2822에 따라 HTML은 한 줄에 998자까지 제한한다. 따라서 998을 넘으면 자동으로 !를 붙여 줄을 나눈다. 참조: https://www.ietf.org/rfc/rfc2822.txt (rfc2822 2.1.1. Line Length Limits) 메일 전송하는 코드를 수정한 후 희한하게 메일 온 걸 보면 느낌표가 랜덤하게 붙는 현상이 나타났다. 붙는 위치도 매번 다르고 어떤 메일은 정상적으로 올 때도 있었다!! HTML에서 느낌표가 추가되는 것 같은데 내가 수정한 건 c파일이지 HTML이 아니라서 더욱 혼란스러웠다. OS 버전 차인로 나는 오륜가 싶어 버전 스펙도 다 읽어봤지만 관련된 내용도 없었다. Sendmail의 문젠가 싶어서 mailx로도 바꿔 전송해봤지만 다른..
2022.01.11