검색결과 리스트
C#에 해당되는 글 78건
- 2009.05.28 [C#]Hashtable에 대한 주저리~
- 2009.05.07 [C#]TripleDES 에 대한 주절 주절~
- 2009.04.22 [C#]NetworkStream에 대한 작은 주절거림..
- 2009.04.22 [C#]ReadLine()과 ReadToEnd()의 차이점
- 2009.04.07 [C#]일본어 인코딩
- 2009.03.27 [C#]ADO.NET의 CommandBuilder를 이용한 쿼리 내용 GridView에 표현하기
- 2009.03.24 [C#]GridView에 CheckBox 넣기 1
- 2009.03.24 [C#]데이터 베이스 데이터 타입 받아오기
- 2009.03.24 [C#]다이얼로그를 이용한 파일 열기 6
- 2009.03.22 [C#]Ping Test 2
글
-_- 근데.. 이놈을 출력할때는 랜덤입니다..
1,2,3,4 로 넣었다고 할 경우
1 3 2 4 라던지 경우의 수대로 막 -_-..
그런게 싫다면 sortedList 를 이용하면 좋죠
정해진 기준에 순차적으로~ 슈슉~ 나오지만.. -_- 네.. 무겁습니다.. 것도 아주 제대로 -_-
Hashtable을 이용하면 key와 value 값을 구분해서 쉽게 이용되죠
Hashtable table = new Hashtable();
table.add(key,value);
이런 식으로 쓰면 됩니다.
물론 key와 value에 정해진 타입은 없습니다.
쓰시고 싶은 형태로 정의하시면 됩니다.!!
가장 기초적이라 할 수도 있는 컬렉션이지만..
다시 한번 돌아보면 좋겠죠?^_^/
설정
트랙백
댓글
글
TripleDES를 이용하여 C#에서는 손쉽게!! 암호화를 한다.
TripleDESCryptoServiceProvider tDESalg = new TripleDESCryptoServiceProvider();
하지만 -_- 이놈에 대해서 한번이라도 생각해 본 적 있는가?
생성할때마다 Key와 IV 의 값이 달라진다.
그래서 생각해 낸것이!!
File.WriteAllBytes(경로,Key 또는 IV)를 이용하여 파일로 빼둔다!!
그리고 난다음 복호화 할때 저 파일을 File.ReadAllBytes(경로)를 해서 해 놓으면!!
APP 개발에 도움이 많이 될 것이다!! 라고 필자는 생각한다 ^_^/
우힛~ -_-;
설정
트랙백
댓글
글
Socket을 열어서 적용 시켜줄 수도 있다.
그럼 여기서 각각의 NetworkStream을 받아서 적용하는 법을 알아보자
1. Socket
Socket server=null;
Socket client=null;
...
이렇게 정의 되어 있다고 한다면
server 소켓에 연결된 것을 client에 바인딩 해 준다
client = server.Accept();
이렇게 하면 연결이 된 것이다
하면 NetworkStream은 어떻게 쓰느냐?
NetworkStream ns = new NetworkStream(client);
를 해 주면 ns에 대해서 확보를 한다.
SreamWriter나 StreamReader를 이용할 경우 new 스트림 종류(ns) 를 해 주면 적용이 된다.
2. 헬퍼 클래스
TCPListener 를 통하여 연결되었다고 할 경우에
NetworkStream ns =null;
상태에서
ns = client.getStream();
처리를 해 준다음
SreamWriter나 StreamReader를 이용할 경우 new 스트림 종류(ns) 를 해 주면 적용이 된다.
간단하지만.. 약간의 차이점이랄까?
설정
트랙백
댓글
글
왜? -_- 스레드의 생명 주기와 같이 끝나는 시점을.. 몰랐기에..
그냥 MSDN 볼걸... ㅠ_ㅠ
브레이크 포인트 찍어서 정확하게 알아낸게 어딘지.. ㅠ_ㅠ
일단 Stream을 통해서 ReadLine()을 한 것은 바로 제어권이 넘어간다
하지만!!
ReadToEnd()한 것은.. -_-
해당 Stream이 닫혀야지만.. 그 제어권이 넘어갔다..
필자는.. -_- 솔직히 이 두개 똑같은 형식일거라 생각하고 아무 생각없이..
-_- 뭐지.. 하면서 여러 수십번 실행을 해 봤다..
테스트 해 보실 분은 FileStream을 열어서 각각 ReadLine()과 ReadToEnd()
두가지를 적용해 보시면 금방 알아채실 것이다..
-_- 아 글고 딱 보면 알 것이다.
ReadLine()은 한줄 한줄 불러들이지만!!
ReadToEnd()는.. -_- 끝까지~ 다 긁어온다!!
설정
트랙백
댓글
글
처리를 한 후 당겨 쓰면 된다 -_-a
DllImport를 오랜만에 하면서 이래저래 손댔더니 -_-;;
기억 저 멀리에서 -_-..
반갑게 맞이하네;;
설정
트랙백
댓글
글
컬럼을 지정해 주지 않고는 GridView에 데이터가 표현이 되지 않아서 어떻게 할까 했다
가변적으로 변하는 컬럼들의 이름과 타입때문에 직접받아와서 해 보고 했지만..
내키지 않아서 찾아본 결과.. 좋은 예가 있었다.
그 코드 내용은 다음과 같다.
OracleDataAdapter dataAdapter = new OracleDataAdapter("select * from test_khw", _connectionString);
OracleCommandBuilder commandBuilder = new OracleCommandBuilder(dataAdapter);
DataTable table = new DataTable();
table.Locale = System.Globalization.CultureInfo.InvariantCulture;
dataAdapter.Fill(table);
dataGridView1.DataSource = table;*/
//dataGridView1.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCellsExceptHeader);
데이터 베이스 종류를 바꿔서 이용할때는 각기 맞는 클래스로 변경해서 해 주면 출력이 된다.
설정
트랙백
댓글
글
_tbl.Columns.Add("select", typeof(System.Boolean));
물론 GridView를 생성할때 VS를 이용해도 된다.
체크 유무의 값은 True와 False로 나타난다.
그 값을 확인하기 위해서는
GridView[i, j].Value를 이용하면 얻을 수가 있다!
필자는 것도 모르고 -_-;; 상태가 바뀔때마다 체크를 했다가
삽질아닌 삽질을 했다 ㅠ_ㅠ
설정
트랙백
댓글
글
MSDN인가.. 거기서는 Row와 Column 이중 루프를 돌아서 받아오는 것을 봤었다.
하지만.. 코드 양도 줄이고 탐색 시간 면에서도 필자가 보기엔 이것이 더 좋은 것 같다.
foreach (DataColumn col in ds.Tables[_table].Columns)
{
if (i < _cloumntoken.Length)
{
if (col.ColumnName.ToString().Equals(_cloumntoken[i].ToString()))
{
lstColumn.Items.Add(col.DataType.ToString());
_type[i] = col.DataType.ToString();
i++;
}
}
}
설정
트랙백
댓글
글
너무나 당연히 모두들 알고는 있지만 다이얼로그를 이용한 파일 열기에 대해서
주절거리는 시간이 왔다!!
OpenFileDialog open = new OpenFileDialog();
open.Filter = "SQL File(*.sql)|*.sql|Config File(*.ini)|*.ini|AllFiles(*.*)|*.*";
open.InitialDirectory = @"C:\";
open.Title = "원하시는 파일을 선택해 주십시오";
if (open.ShowDialog() == DialogResult.OK)
{
this.txt_Filepath.Text = open.FileName;
}
먼저 다이얼로그의 객체를 생성한다.
다음은 필터다. 자기가 원하는 필터를 설정해 준 다음
기본 디렉토리를 정해 준다.
그럼.. 끝이다 -_-;;
Sava 다이얼로그도 같은 형식이다.
너무 기초적이라고들 하지만.. 난 이렇게 생각한다.
분명!! 모르는 사람 많다.
그래서.. 필자는;; -_-;; 올릴까 말까 하다가 스스로의 발전을 위해서
글을 올려본다.
설정
트랙백
댓글
글
C#으로 Ping을 테스트하는 방법이 없을까.. 하는 생각에 -_-;
그냥 무작정;; 바보같은 짓을 하다가 MSDN에 있는 코드를 발견했다 -_-;
Ping pingSender = new Ping();
PingOptions options = new PingOptions();
// Use the default Ttl value which is 128,
// but change the fragmentation behavior.
options.DontFragment = true;
// Create a buffer of 32 bytes of data to be transmitted.
string data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
byte[] buffer = Encoding.ASCII.GetBytes(data);
int timeout = 120;
PingReply reply = pingSender.Send("127.0.0.1", timeout, buffer, options);
if (reply.Status == IPStatus.Success)
{
Console.WriteLine("Address: {0}", reply.Address.ToString());
Console.WriteLine("RoundTrip time: {0}", reply.RoundtripTime);
Console.WriteLine("Time to live: {0}", reply.Options.Ttl);
Console.WriteLine("Don't fragment: {0}", reply.Options.DontFragment);
Console.WriteLine("Buffer size: {0}", reply.Buffer.Length);
}
많은 분들이 당연히 알고 있으신 DataBase Connection에서 open()을 실행 했을시
conn.state 를 하면 Open의 유무를 알 수 있듯
여기에서는 PingReply에 의한 Status를 체크하여 성공 유무를 받아 처리한다.
하움.. -_- 확실한건.. 왠만하면 MSDN에서 먼저 찾아보자라는 것을 몸으로 느껴버린 사례이다 ㅠ_ㅠ
앞으로 갈 길은 많고.. 할 것도 많은.. Neo의 삽질은!!
계속된다!!
RECENT COMMENT