[c#] System.Diagnostics을 사용한 간단 Logger

오랜만에 visual studio 와 c#으로 작업중입니다.기존에 로그파일을 작성하기 위해 Log4Net을 사용했었는데요. 업데이트가 거의 되고 있지 않아서 지속적으로 업데이트되고 있는 NLog를 사용할 예정입니다. 현재 단계는 간단히 테스트 중이라서 아래와 같이 간단히…

오랜만에 visual studio 와 c#으로 작업중입니다.기존에 로그파일을 작성하기 위해 Log4Net을 사용했었는데요. 업데이트가 거의 되고 있지 않아서 지속적으로 업데이트되고 있는 NLog를 사용할 예정입니다. 현재 단계는 간단히 테스트 중이라서 아래와 같이 간단히…

개인적으로 log4net을 즐겨 사용하는데요. 간단하게 로그를 확인할 용도로 아래와 같은 클래스를 사용하였습니다. 로그로 출력할 문자열은 string.Format 과 같은 인자를 사용하시면 됩니다.

파일명 및 파일경로가 적합한지 확인하는 메소드입니다.Path.GetInvalidPathChars()와 Path.GetInvalidFileNameChars()는 파일과 경로에서 사용할 수 없는 문자들을 반환해 줍니다.이를 정규식으로 점검하여 사용할 수 없는 문자열이 포함되어 있는지 체크하는 방식입니다.

파일의 삭제/이동 등을 수행하기 전에 파일이 사용중인지 확인하는 메소드입니다. 파일 삭제시 파일이 잠겨있는지 확인하고 처리하는 메소드는 아래와 같습니다.

network stream으로 전달받은 byte 배열을 파일로 저장하기 위해 사용한 메소드입니다. 정상 처리시 true를 리턴합니다. 파일을 network으로 전송하기 위해 byte 배열로 만드는 메소드입니다. 실패시 길이가 0인 Byte[]을 리턴합니다.

TLV는 Type-length-value의 약자로서 data 통신에 종종 사용되는 프로토콜입니다.T를 Tag라고 하기도 하지요.TLV의 Type과 Length는 고정크기이며, Value는 가변크기라서 Length의 값으로 크기를 판단합니다.참고 : http://en.wikipedia.org/wiki/Type-length-valueC#에서 byte배열을 class로 매핑하기 위해 마샬링을 사용하면 코드가 간단해…