소리소문 없이... 사랑도 명예도 이름도 남김 없이...
DexCore.net

C# 257

C# 반올림, 올림, 버림 사용하기

C# 에서는 System.Math를 통해서 다양한 수학 함수를 제공하고 있습니다. 그중에서도 자주 사용하는 반올림 연관 함수를 정리해 놓습니다. 기본적인 사용 형태는 다음과 같습니다.반올림 Math.Round(값) Math.Round(값, 소숫점)올림 Math.Ceiling(값)버림 Math.Truncate(값)올림이나 버림의 경우에는 값의 정수부분 만을 결과로 돌려주지만 반올림의 경우에는 소숫점을 지정하지 않는 경우에는 정수 값을 리턴하지만 소숫점을 지정하는 경우 해당 소숫점을 기준으로 반올림한 부동소숫점 값을 돌려줍니다. 숫자를 문자열로 변환하는 format 함수에서도 숫자 형식을 벗어난 소숫점을 반올림 처리하는데 올림이나 내림 처리를 하고 싶을 경우에는 반올림을 감안해서 해당 소숫점의 절반 값을 더..

C# 2015.07.24

C#에서 PDF출력하기

C# 프로그래밍 과정에서 고객의 요청 때문에 PDF 파일을 만드는 경우도 있지만 프로그램 자체에 PDF 생성 기능이 있으면 여러모로 활용도가 넓어질 수 있습니다. 가장 큰 장점은 보고서 인쇄를 대치할 수 있다는 것입니다. SAP이 배포하고 있는 크리스탈 리포트(Crystal Reports)를 사용하여 보고서 인쇄 기능을 개발할 수도 있지만 필자의 경우에는 SAP이 개발자용 자료를 그냥 다운로드 시켜주지도 않고(복잡한 등록 양식을 요구함) 배포 시점에 SAP의 패키지를 추가로 배포해야하는 부담이 귀찮은 것도 있었지만 생성된 보고서 파일을 부가적으로 활용할 수 있도록 해줌과 동시에 PDF 자체의 인쇄 조절 기능등을 활용할 수 있다는 장점을 보고 PDF를 통한 보고서 출력을 시도하게 되었습니다. PDF 생성을..

C# 2015.07.24

운영체제에 등록되지 않은 폰트 사용하기

응용 프로그램을 작성하다 보면 운영체제의 기본폰트로 등록되지 않은 폰트를 사용해야 할 경우가 있습니다. 이 경우 보통은 설치프로그램에서 폰트를 운영체제에 등록하여 사용하죠. 하지만, 시스템상에 폰트를 많이 설치하면 그만큼 시스템이 평소에 로드하고 있어야 하는 폰트가 많아 지므로 시스템이 느려지게 될 것이고, 자주 사용하지 않는 폰트파일이라면 굿이 등록시켜 사용할 필요가 없습니다.그렇다면, 폰트파일을 운영체제에 등록하지 않고, 필요 할때만 잠시 로드하여 사용하면 좋겠죠? 이 부분을 지원을 지원하기 위해서 .NET Framework 에서는 System.Drawing.Text.PrivateFontCollection 클래스를 제공하고 있습니다.PrivateFontCollection 클래스는 운영체제에 등록된 폰..

C# 2015.07.23

SMTP

class Program{ static void Main(string[] args) { // 메일 메세지 작성 MailMessage sendMail = new MailMessage(); // System.Net.Mail sendMail.From = new MailAddress("j07051@naver.com"); // 보내는 사람 sendMail.To.Add(new MailAddress("j07051@naver.com")); // 받는 사람 sendMail.Subject = "테스트"; // 메일 제목 sendMail.Body = "내용 없음"; // 메일 내용 // 보내는 메일 서버(SMTP) SmtpClient smtpServer = new SmtpClient("SMTP 서버 도메인"); // Sys..

C# 2015.07.19

프로그램 중복 실행 방지

1. Mutex를 사용하는 방법 프로젝트의 시작점에서 ?123456789101112bool isNew = true;Mutex mutex = new Mutex(true, "특정문자열", out isNew); if (isNew == false){ // 중복실행시 처리}else{ // 실행 mutex.ReleaseMutex();}2. GetProcessesByName을 사용하는 방법 프로젝트의 시작점에서 ?12345678910Process[] procs = Process.GetProcessesByName("프로세스이름"); if (procs.Length > 1){ // 중복실행시 처리}else{ // 실행} 3. GetProcesses를 사용하는 방법 프로젝트의 시작점에서 ?1234567891011121314..

C# 2014.08.07
728x90
반응형