에 C#을에서 유니 코드 문자열을 보내, 나는 유니 코드 문자열을C#을 측면에서 자바
byte[] b = System.Text.Encoding.UTF8.GetBytes(str);
string unicode = System.Text.Encoding.UTF8.GetString(b);
//Plus \r\n for end of send string
SendString(unicode + "\r\n");
void SendString(String message)
{
byte[] buffer = Encoding.ASCII.GetBytes(message);
AsyncCallback ac = new AsyncCallback(SendStreamMsg);
tcpClient.GetStream().BeginWrite(buffer, 0, buffer.Length, ac, null);
}
private void SendStreamMsg(IAsyncResult ar)
{
tcpClient.GetStream().EndWrite(ar);
tcpClient.GetStream().Flush(); //data send back to java
}
를 보내려면이 코드를 가지고이 문제는 I가 유니 코드 문자열을 수신 할 수있다
Charset utf8 = Charset.forName("UTF-8");
bufferReader = new BufferedReader(new InputStreamReader(
sockServer.getInputStream(),utf8));
String message = br.readLine();
자바 쪽 자바 측. 어떻게 해결할 수 있습니까?
"받을 수 없다"는 것이 무엇입니까? 정확히 어떻게됩니까? – svick
왜 utf-16 문자열을 utf-8 바이트 배열로 변환 한 다음 utf-16 문자열로 다시 변환 하시겠습니까? – ChaosPandion