using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; using System.Net; using System.Net.Sockets; namespace EchoClientSampleCode { class Program { private static string hostname = "ServerAddress"; private static int port = ServerPort; private static TcpClient tc; private static NetworkStream ns; private static StreamReader sr; private static StreamWriter sw; private static string input; static void Main(string[] args) { try { tc = new TcpClient(); tc.Connect(hostname, port); } catch (Exception exc) { Console.WriteLine("Couldn't to connect..."); } ns = tc.GetStream(); sr = new StreamReader(ns, System.Text.Encoding.Default); sw = new StreamWriter(ns, System.Text.Encoding.Default); try { while (tc.Connected) { input = Console.ReadLine(); if (input == "quit") break; sw.WriteLine(input); sw.Flush(); Console.WriteLine(sr.ReadLine()); } } catch (Exception exc) { Console.WriteLine(exc.Message); } Console.WriteLine("Disconnecting from server..."); sr.Close(); sw.Close(); ns.Close(); tc.Close(); Console.WriteLine("Press Enter key."); Console.ReadLine(); } } }
C#
- [C#]Echo Client Sample Code 2009.09.12
- [C#]Stream을 이용하여 한글 입/출력 처리시 문자열이 깨지는 경우 2009.09.08 2
[C#]Echo Client Sample Code
2009. 9. 12. 18:52
[C#]Stream을 이용하여 한글 입/출력 처리시 문자열이 깨지는 경우
2009. 9. 8. 23:42
다음과 같이 Stream을 사용하였다면, 한글 문자열은 100% 깨집니다.
다음과 Encoding을 설정하여 주면, 한글 문자열이 깨지지 않고 처리됩니다.
변경하고자 하는 다른 Encode가 있다면 그것으로 설정하여도 됩니다.
…… 생략 ……
reader = new StreamReader(ns);
writer = new StreamWriter(ns);
…… 생략 ……
reader = new StreamReader(ns);
writer = new StreamWriter(ns);
…… 생략 ……
다음과 Encoding을 설정하여 주면, 한글 문자열이 깨지지 않고 처리됩니다.
…… 생략 ……
reader = new StreamReader(ns, System.Text.Encoding.Default);
writer = new StreamWriter(ns, System.Text.Encoding.Default);
…… 생략 ……
reader = new StreamReader(ns, System.Text.Encoding.Default);
writer = new StreamWriter(ns, System.Text.Encoding.Default);
…… 생략 ……
변경하고자 하는 다른 Encode가 있다면 그것으로 설정하여도 됩니다.