시스템언어설정과 소켓프로그램에서 데이터를 받아드리는것과의

rokmn3309의 이미지

안녕하세요..

현재 사용하고 있는 시스템은 whitebox 3.0입니다.
설치되어 있는 프로그램은 apache 2.0.49, mysql 4.0.2,php-4.3.6,sendmail-8.12.11,openssl-0.9.7d과
j2re1.4.2 , j2sdk1.4.2를 설치해서 사용하고 있습니다.

자바소켓서버와 flash의 xmlsocket과 통신을 하는걸 만드는도중에..
서버의 언어설정에 따라서 해석을 못하는 문제가 있어서..
질문드립니다.

서버의 언어설정이 ja_JP.eucJP로 되어 있는 경우에..
자바소켓에서 받아드린 데이터를 헥사코드로 출력해보면은..
넘어오는 일본어나 한국어는 FFFD나 뭐 그런 알수 없는 값으로 찍힙니다.(?표시됨)

서버의 언어설정을 ja_JP.utf8로 바꾸고 하면은 제대로된 헥사값이 나오고.
출력도 잘됩니다.

문제는. 기존에 서비스하는 서버가 ja_JP.eucJP로 되어 있어서. 이걸 ja_JP.utf8로 변환시에 문제가 될게 많을것 같은데..
어떤가요??

그리고 자바단에서 컴파일시에 encoding옵션을 줘도 문제는 동일하던데 자바자체적으로 해결될수 없을까요?

읽어주셔서 감사합니다.
수고하세요.

vness의 이미지

자바 소켓 서버의 file.encoding property를 UTF-8로 세팅해주신 후 실행시켜보시죠..

System.setProperty("file.encoding=UTF-8");

단, 이렇게 바꾸셨더라도 자바 소켓 서버가 돌고 있는 서버의 터미널에

System.out.println 으로 flash의 xmlsocket으로 부터 들어오는 문자열을

그대로 찍으면 깨져보일껍니다. 자바 소켓 서버의 encoding과 서버의 터미널

encoding이 틀릴테니까요.

atie의 이미지

StreamReader나 StreamWriter에 charset을 지정해보세요.

----
I paint objects as I think them, not as I see them.
atie's minipage

rokmn3309의 이미지

안녕하세요..
답변주셔서 감사합니다.

System.setProperty("file.encoding=UTF-8") 을 코드에 추가후 컴파일하거나 컴파일 옵션에 encoding utf8을 줘도
제대로 동작하지 않았습니다.

소켓에서 받을때.. 제대로 받지 못하는것 같습니다.

컴파일은 되어 있는 상태에서 터미널에서 자바서버를 실행시키기전에 export LC_CTYPE=ja_JP.utf8 해주고
실행시키면은 제대로 동작합니다.
띄운후 다시 export LC_CTYPE=ja_JP.eucJP로 바꾸어줘도 문제가 없었습니다.

export 로 LC_CTYPE=ja_JP.utf8 해주고 서버를 실행시켰을때 다른 데몬에 영향을 주지는 않을까요?
부팅될때.. rc.local에서 bash로 java데몬을 실행시킬때 이 옵션을 넣어주면은
될듯한데 다른 서버프로그램에 영향이 있는지 알고 싶습니다.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.