C# Random 사용

C#/기본 2012. 6. 27. 15:44 Posted by 퓨어레드
Random r = new Random ();

r.Next ();
r.Next (10);
r.Next (1, 20);

 

'C# > 기본' 카테고리의 다른 글

DateTime 시간 스트링으로 변환  (0) 2012.06.27
웹브라우져 띄우기  (0) 2012.06.22
날짜형 파싱하여 DateTime 형으로 만들기  (0) 2012.06.13
C#.NET 입출력 관련 정리  (0) 2012.05.24
const 와 readonly 의 차이  (0) 2012.05.02

DateTime 시간 스트링으로 변환

C#/기본 2012. 6. 27. 15:38 Posted by 퓨어레드
DateTime dt = DateTime.Now;

dt.ToString ("yyyyMMddHHmmss");

'C# > 기본' 카테고리의 다른 글

C# Random 사용  (0) 2012.06.27
웹브라우져 띄우기  (0) 2012.06.22
날짜형 파싱하여 DateTime 형으로 만들기  (0) 2012.06.13
C#.NET 입출력 관련 정리  (0) 2012.05.24
const 와 readonly 의 차이  (0) 2012.05.02

웹브라우져 띄우기

C#/기본 2012. 6. 22. 17:05 Posted by 퓨어레드

'C# > 기본' 카테고리의 다른 글

C# Random 사용  (0) 2012.06.27
DateTime 시간 스트링으로 변환  (0) 2012.06.27
날짜형 파싱하여 DateTime 형으로 만들기  (0) 2012.06.13
C#.NET 입출력 관련 정리  (0) 2012.05.24
const 와 readonly 의 차이  (0) 2012.05.02

날짜형 파싱하여 DateTime 형으로 만들기

C#/기본 2012. 6. 13. 15:13 Posted by 퓨어레드

'C# > 기본' 카테고리의 다른 글

DateTime 시간 스트링으로 변환  (0) 2012.06.27
웹브라우져 띄우기  (0) 2012.06.22
C#.NET 입출력 관련 정리  (0) 2012.05.24
const 와 readonly 의 차이  (0) 2012.05.02
C# 컬렉션 - 1  (0) 2012.05.02

C#.NET 입출력 관련 정리

C#/기본 2012. 5. 24. 12:56 Posted by 퓨어레드

닷넷 강의를 듣다가 한번 쯤 정리하고 싶어서 정리 했다. ^^ 필요한 내용임~

 

C#.NET 입출력 정리

 

스트림

, 출력 작업을 대행해 주는 중간 매개체

-       , 출력의 대상이 되는 장치에 상관없이 동일한 방법으로 자료 조정

 

스트림의 종류

-       입력 스트림 : TextReader, BinaryReader

-       출력 스트림 : TextWriter, BanaryWrtier

-       스트림 클래스는 입출력이 동시에 사용 가능함

 

.NET 에서 파일과 디렉토리 클래스

 

FileSystemInfo

파일 시스템 객체를 나타내는 클래스

Directory, DirectoryInfo

디렉토리를 나타내는 기본 클래스

File, FileInfo

파일을 나타내는 기본 클래스

Path

경로를 조정하기 위한 클래스

 

 

File 클래스

-       입출력에 관련된 클래스들 중 기본이 되는 클래스

-       파일에 관련된 정보를 제고

-       FileStream 의 객체를 생성하여 파일의 입출력 작업을 수행

-       클래스 내의 맴버 메서드들은 public static 으로 되어있음

-       파일 관련 정보 (파일 존재 여부, 파일 생성 시간, 엑세스 시간, 최종 수정시간 등…)

-       파일 삭제, 복사, 이동 가능

 

File 클래스 주요 메서드

File.Copy

파일을 복사 한다.

File.Copy (“File.Test.cs”, “Output.txt”, true);

File.Exists

파일이 존재 하는지 체크한다.

File.Exists (“Output.txt”);

File.GetCreationTime

파일 생성 시간을 리턴한다.

 

File.OpenRead

FileStream 을 리턴한다.

 

 

문자 스트림 생성 예제

FileStream fs = File.OpenRead (”poet.txt”);

StreamReader r = new StreamReader (fs, System.Text.Encoding.Default);

 

// 문자 스트림 변환

r.BaseStream.Seek (0, SeekOrigin.Begin);

while (r.Peek () > -1)

Console.WriteLine (r.ReadLine ());

r.Close ();

Directory 클래스

Directory.CreateDirectory

디렉터리 생성

Directory.Exists

디렉토리 존재 확인

Directory.GetFiles

파일 리스트를 리턴한다.

Directory.GetDirectories

디렉토리 리스트를 리턴한다.

 

 

 

 

 

Path 클래스

Path.DirectorySeparatorChar

디렉토리 구분 문자

Path.Combine

패스를 합친다.

Path.GetFileName

파일 이름을 리턴한다.

 

 

 

Stream 클래스

-       Stream 클래스는 추상 클래스

-       바이트 단위로 데이터를 처리하는 바이트 스트림 클래스들 중 최 상위 기본 클래스

-       바이트 스트림 클래스

-       파일, 입출력 장치, 프로세스 사이의 통신, Socket 통신 등에서 사용

 

FileStream 클래스

-       파일을 읽고 쓰는 기능을 제공하는 클래스

-       Stream 클래스 상속

-       바이트 스트림에 속함

-       스트림 생성하는 곳은 파일

 

l  파일 쓰기 예제

String path = @”C:\Test.txt”;

 

FileStream fs = new FileStream (path, FileMode.Create);

StreamWriter sw = new StreamWriter (fs, System.Text.Encoding.Default);

sw.BaseStream.Seek (0, SeekOrigin.End);

 

sw.WriteLine (“-------------------------------“);

sw.WriteLine (“테스트 이다.“);

sw.WriteLine (“-------------------------------“);

 

sw.Flush ();

sw.Close ();

 


 

*. 파일 읽기 예제

FileStream fs = new FileStream (path, FileMode.OpenOrCreatem, FileAccess.Read);

 

StreamReader sr = new StreamReader (fs, System.Text.Encoding.Default);

sr.BaseStream.Seek (0, SeekOrigin.Begin);

 

while (sr.Peek () > -1)

Console.WriteLine (sr.ReadLine ());

 

sr.Close ();

 

BufferedStream

-       버퍼 기능을 가진 바이트 스트림

-       내부적으로 버퍼 기능을 제공해 주는 스트림

-       입력에 대한 버퍼링과 출력에 대한 버퍼링을 지원

-       버퍼링 BufferedStream 클래스의 Flush () 메서드가 호출되면 한번에 데이터를 쓴다.

 

FileStream fs = new FileStream (path, FileMode.OpenOrCreatem, FileAccess.Read);

 

BufferedStream bi = new BufferedStream (fs);

 

.. 처리

 

bi.Close ();

 

MemoryStream 클래스

-       메모리를 목표지점을 하드웨어적인 장치나 파일이 아닌 메모리를 그 대상으로 하고 있는 바이트 스트림

-       메모리 공간에 상주되어 있는 데이터를 목표지점으로 함

-       부호 없는 바이트 배열로 저장된 데이터를 캡술화 함

byte [] values = new byte [] {0, 1, 2, 3, 4, 5, 6};

 

MemoryStream ms = new MemoryStream (values);

 

int temp = 0;

 

while ((temp = ms.ReadByte ()) != -1)

Console.Write (temp);

 

ms.Close ();

 


 

TextReader & TextWriter 클래스

-       문자 스트림의 입출력을 관장하는 최상위 추상 기본 클래스

-       해당 데이터가 문자라고 가정, 문자의 인코딩을 검사 후 문자의 인코딩에 따라 자동으로 문자 해석

-       C# 에서 사용하는 문자 포멧인 유니코드로 변환

-       하위 클래스들에게 자신들의 메서드를 재정의 해서 사용할 수 있는 역할 제공

-       TextReader : 16비트의 유니코드 형식으로 데이터를 읽음

-       TextWriter :

 

StringReader, StringWriter 클래스

-       문자열을 스트림에 기록하거나 읽어낼 때 사용하는 클래스

-       목표 지점은 String 형의 데이터

-       TextReader 클래스와 TextWriter 클래스를 각각 상속

 

String str = “abcdef”;

 

StringReader s = new StringReader (str);

StringWriter w = new StringWriter ();

 

While ((ch = s.Read ()) != -1)

Sw.Write ((char) ch);

 

s.Close ();

w.Close ();

 

StreamReader, StreamWriter 클래스

-       바이트 스트림을 문자 스트림으로 바꾸어 주는 역할을 담당하는 스트림

-       기본적으로 TextReader TextWriter 에서 상속

 

BinaryReader & BinaryWriter 클래스

-       데이터 타입에 해당하는 메모리 사이즈에 따라서 바이너리 형식으로 읽음

 


스트림을 이용하여 웹페이지 받기

-       스트림을 사용하여 웹페이지를 읽어오는 원리

-       네트워크에 연결된 스트림을 생성 후 그 스트림으로 데이터를 읽어오는 것

-       WebRequest 클래스와 WebResponse 클래스 사용

 

int length = 1024;

char [] buffer = new char [length];

 

WebRequest req = WebRequest.Create (http://aaaaa);

WebResponse res = request.GetResponse ();

 

StreamReader sr = new StreamReader (response.GetResponseStream (), System.Text.Encoding.Default);

 

int count = 0;

 

do

{

count = sr.Read (buffer, 0, length);

Console..WriteLine (buffer);

}

while (count > 0)

 

sr.Close ();

 

 

 

'C# > 기본' 카테고리의 다른 글

웹브라우져 띄우기  (0) 2012.06.22
날짜형 파싱하여 DateTime 형으로 만들기  (0) 2012.06.13
const 와 readonly 의 차이  (0) 2012.05.02
C# 컬렉션 - 1  (0) 2012.05.02
foreach 랑 indexer  (0) 2012.05.02

const 와 readonly 의 차이

C#/기본 2012. 5. 2. 15:08 Posted by 퓨어레드

const : 상수화

*. 초기화와 동시에 값을 셋팅해야 된다.

*. 자동으로 static 으로 선언된다.

 

readonly : 읽기 전용

*. 초기화를 안해줘도 괜찮다.

*. 딱 한번만 값을 설정할수 있다.

*. static 키워드를 붙이지 않으면 static 으로 동작하지 않는다.

 

'C# > 기본' 카테고리의 다른 글

날짜형 파싱하여 DateTime 형으로 만들기  (0) 2012.06.13
C#.NET 입출력 관련 정리  (0) 2012.05.24
C# 컬렉션 - 1  (0) 2012.05.02
foreach 랑 indexer  (0) 2012.05.02
Dictionary .. (Generic 으로된 Hashtable)  (0) 2012.05.02

C# 컬렉션 - 1

C#/기본 2012. 5. 2. 15:07 Posted by 퓨어레드

컬렉션의 기본 인터페이스 : System.Collections

IEnumerable 과 IEnumerator 인터페이스

IEnumerable : 컬렉션 클래스가 구현을 해야 되는 인터페이스
IEnumerator : 컬렉션 클래스가 IEnumerable 을 구현했다면 IEnumerator 을 이용하여 데이터 접근 가능

IEnumerable 은 GetEnumerator 을 구현해야한다.


기본 예제 )

string [] a = {"A", "B", "C", "D", "E", "F"};

IEnumerator e = a.GetEnumerator ();

while (e.MoveNext ())
{
System.out.println ((String) e.Current);
}

ICollection 인터페이스
- ICollection 은 IEnumerable 을 상속한다.

- 주요 맴버
- Count : 컬렉션의 객체수 반환
- IsSynchronuzed : 컬렉션에 대한 접근 동기화 여부
- SyncRoot : 동기화 객체

ICollection c = a; // 배열은 ICollection 으로 캐스팅이 가능하다.

 

'C# > 기본' 카테고리의 다른 글

C#.NET 입출력 관련 정리  (0) 2012.05.24
const 와 readonly 의 차이  (0) 2012.05.02
foreach 랑 indexer  (0) 2012.05.02
Dictionary .. (Generic 으로된 Hashtable)  (0) 2012.05.02
ini 파일 Class  (0) 2012.04.19

foreach 랑 indexer

C#/기본 2012. 5. 2. 15:07 Posted by 퓨어레드

foreach 문법도 완전 초햇갈려 아웅 미쳐

foreach (타입 변수명 in 배열 또는 컬랙션)

{

}

->

foreach (int a in intArr)

{

}

이당

Indexer

public 데이터타입 this[int index]

{

get { }

set { }

}

이다.

당연한것이지만 get 은 리턴을 해야된다 -_-;;

 

'C# > 기본' 카테고리의 다른 글

const 와 readonly 의 차이  (0) 2012.05.02
C# 컬렉션 - 1  (0) 2012.05.02
Dictionary .. (Generic 으로된 Hashtable)  (0) 2012.05.02
ini 파일 Class  (0) 2012.04.19
오버라이딩  (0) 2012.04.19

Dictionary .. (Generic 으로된 Hashtable)

C#/기본 2012. 5. 2. 15:05 Posted by 퓨어레드

특별히 많이 쓰는 자료구조인 Hashtable

C# 에서도 Hashtable 이 있긴하지만 Object 기반으로 되어있다.

Generic 기반으로 된 Hashtable 은 Dictionary 이다.

 

// 생성

Dictionary<String, Member> memberList;

 

// 데이터 추가

memberList.Add (member.userID, member);

 

// 데이터 가져오기

return memberList[userid];

 

 

Enumerator)

//////////////////////////////////

IDictionaryEnumerator myEnum = memberList.GetEnumerator ();

while (myEnum.MoveNext ())
{
    if (((Member)myEnum.Current).stat != MemberStat.OFFLINE)
        connectCnt++;
}

등으로 잘 되어있다.

그외 메서드는 그냥 인텔리센스 보면 대충 뭔말인지 아니깐 인텔리 센스를 참고하자~

 

'C# > 기본' 카테고리의 다른 글

C# 컬렉션 - 1  (0) 2012.05.02
foreach 랑 indexer  (0) 2012.05.02
ini 파일 Class  (0) 2012.04.19
오버라이딩  (0) 2012.04.19
텍스트 파일 한번에 읽고 쓰기  (0) 2012.04.19

ini 파일 Class

C#/기본 2012. 4. 19. 14:41 Posted by 퓨어레드

설정파일의 하나인 ini 파일을 처리할수 있는 클래스

 

'C# > 기본' 카테고리의 다른 글

foreach 랑 indexer  (0) 2012.05.02
Dictionary .. (Generic 으로된 Hashtable)  (0) 2012.05.02
오버라이딩  (0) 2012.04.19
텍스트 파일 한번에 읽고 쓰기  (0) 2012.04.19
DispatcherTimer  (0) 2012.04.19