프로그래밍/C# 31

[C#] 다국어 처리 방법(MultiLanguage)

C#에서 리소스파일을 이용해서 다국어 처리하는방법입니다. 한국어과 영어를 처리해보도록 하겠습니다. 먼저 영문으로 화면을 구성한다음 한국어를 적용하도록 하겠습니다. 간단히 요약하면 CurrentCulture 클래스를 사용해서 적용하고 싶은 언어를 설정해주고 리소스파일을 언어별로 만들어 설정하면됩니다. 1. WinForm의 Localizable 속성을 True변경 2. 리소스파일 추가 (한국어 : ko-KR) 리소스파일을 추가합니다. Form1에 대하여 적용하기위해서 Form.ko-KR.resx의 명칭으로 리소스 파일을 추가합니다. Form1.ko-KR.resx파일에 정보를 한글로 입력합니다. 3. CultureInfo 클래스를 사용한 지역화처리 CultureInfo 클래스를 사용하기 위해서는 using S..

프로그래밍/C# 2022.10.28

[C#] 서비스프로그램 만들기

서버 프로그램이나 백그라우드 서비스 형태로 처리되어야 되는 경우는 화면UI가 있는 응용프로그램이 아닌 서비스 형태의 프로그램으로 만들어 사용하는 경우가 많습니다. 서비스프로그램으로 만드는 방법에대해 알아보겠습니다. 1. Windows서비스 프로그램 메뉴선택 2. Windows서비스 이름 설정 서비스 프로젝트를 생성 후 서비스 이름을 변경하기 위해서는 속성값이 ServiceName의 값을 변경하면됩니다. ssproService라고 서비스이름으로 만들어 보겠습니다. 프로그램 빌드를 해보면 아래와 같이 Windows서비스 시작오류가 나타납니다. 윈도우 서비스의 경우는 설치관리자를 사용하여 서비스에 등록 후 사용해야합니다. 3. 설치관리자 추가. 서비스시작유형을 자동으로 설치 설치관리자를 추가하여 서비스동작 정..

프로그래밍/C# 2022.10.22

[C#] Base64인코딩/디코딩 , Http Basic Auth

문자열을 Bas64인코딩/디코딩하는 방법에 대해 알아보겠습니다. HTTP통신시에 Basic Authentication를 사용하는 경우가 있는데 이때 HTTP Header값에 id:password값을 Base64인코딩하여 호출해야합니다. 1. C# Base64인코딩,디코딩 방법 인코딩시에는 ToBase64String 함수를 사용하고 , 디코딩시에는 FromBase64String 함수를 사용하면됩니다. 아래부분은 테스트 소스코드입니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 using System; using System.Collections.Generic; using System.Linq; using ..

프로그래밍/C# 2022.10.07

[C#] Stringbuilder vs String 사용속도측정(Stopwatch 사용)

C#에서 문자열을 연산하는 경우에는 + 연산자 string.Format문등을 사용해서 손쉽게 사용할 수 있습니다. 이 경우에는 연산을 할때마다 새로운 개체를 생성해서 할당을 하게되어있습니다. StringBuilder와 String연산 속도차이 코드 StringBuilder를 사용하는 경우와 +연산자를 사용해서 String을 결합 했을경우에 대한 속도차이를 비교하는 소스코드입니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 using System; using System.Text; //StringBuild..

프로그래밍/C# 2022.04.18

[C#] 문자열 포멧처리방법 (+, string.Format,$문자열보간)

c#에서 문자열을 합치거하나 할때 다음과 같은 방법이 있습니다. 개인적으로 3번 $문자열 보간을 사용하는 방법이 실수가 가장 적고 보기가 좋아서 $문자열보간방법을 많이 사용하고 있으며 C#6.0버전이후부터 사용이 가능하니 참고하시기 바랍니다. $문자열 보간방법으로 지원되지 않는 케이스의 경우는 string.Format문을 병행해서 사용하고 있습니다. 1. +연산자사용 문자열을 + 로 연결시켜서 원하는 형태로 문자열로 표현할 수 있습니다. https://docs.microsoft.com/ko-kr/dotnet/csharp/language-reference/operators/addition-operator 2. string.Format문사용 Format문을 사용처리하면 {0} {1}와 인덱스형태로 먼저 표기..

프로그래밍/C# 2022.03.23

[C#] 비트연산 (AND,OR,XOR,NOT,SHIFT)

비트연산에 대해 알아보겠습니다. 정확히는 bitwise연산입니다. 비트에 대한 값을 연산하는 부분으로 이진수에 대한 데이터를 연산처리합니다. 1. AND연산 AND연산은 두개의 비트가 1인경우에 1을 처리합니다. 그 외의 경우는 0으로 처리됩니다. 2. OR연산 OR연산은 두개의 비트 중 하나라도 1이면 1로 표기하고 , 두 비트가 모두 0인경우에는 0으로 표기합니다. 3. XOR연산 XOR연산은 두개의 비트가 값이 같으면 0으로, 다르면 1로 표기합니다. XOR연산은 매번 해깔리긴합니다. 4. NOT연산 NOT연산은 비트값을 반전시키면 됩니다. 5. 쉬프트연산(왼쪽) 쉬프트 연산은 비트를 지정한 숫자 만큼 이동 시킵니다. 왼쪽 쉬프트 >2는 6/2 = 3/2 = 1.5 인데 소수점은 버림처리되어 1로 ..

프로그래밍/C# 2022.02.21

[C#] 2진수,8진수,10진수,16진수로 출력하기

숫자 데이터를 2진수,8진수,16진수로 표기하는 방법에 대해 알아보겠습니다. Convert클래스의 ToString 함수를 사용해서 간단하게 변환 가능합니다. 함수 프로토타입을 보면 value에 값을 넣으면 되고 toBase에 변환하고싶은 진법을 넣으면 됩니다. 2,8,10,16진수 변환이 가능합니다. 전체소스코드 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 using System; namespace NumberNotation { public static class Program { public static void Main(string[] args) { int number = 10; string strBin; string st..

프로그래밍/C# 2022.02.20

[C#] FTP 이미지파일 업로드/다운로드

FTP프로토콜을 이용해서 이미지 파일전송하는 방법에 대해 알아보겠습니다. 이미지파일의 경우 바이너리 데이터로 전송해야합니다. FTPWebRequest Class를 이용하여 FTP서버에 접속해서 업로드,다운로드를 진행합니다. 아래 예제는 업로드이미지 파일을 버튼을 클릭하면 FTP서버로 지정된이미지파일 업로드하고, 다운로드이미지파일을 하면 FTP서버에 접속해서 파일을 다운로드 하게 되어있습니다. 첨부파일 : FTP이미지파일 업로드 전체소스 1. 메인화면 - Form1.cs : testimage.png파일을 FTP서버로 전송하는부분과, FTP서버의 testimage.png파일을 testimage_download.png파일로 다운로드 하도록 되어있습니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 1..

프로그래밍/C# 2021.12.24

[C#] 바이너리데이터 파일읽기/쓰기 (BinaryReader/Writer)

이진(바이너리)데이터를 파일 읽기/쓰기방법에 대해 알아보겠습니다. 이진데이터를 파일로 읽기/쓰기를 할경우에는 BinaryReader, BinaryWriter클래스를 주로 사용합니다. 1. 이진데이터 파일저장 먼저 이진데이터를 저장하는 방법입니다. BinaryWriter를 사용해서 int형, string형, byte[]형을 test.bin파일에 저장해보겠습니다. 파일클래스의 경우 using문을 Stream개체를 Open후 Close를 해서 사용합니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 static void WriteBinayData() { int a = 1; string b ="1234"; byte[] arrData = { 0x01, 0x02, 0x03 }; Stream strea..

프로그래밍/C# 2021.11.18

[C#] 빌드시 이미지파일 포함하기

비주얼 스튜디오로 빌드할때 프로젝트 내부에 추가된 이미지/텍스트파일을 추가해서 빌드하고 싶을 경우가 있습니다. 아래와 같이 빌드를 했는데 testimage.png파일을 추가하고 싶은데 bin/Debug폴더를 보면 해당파일이 포함이 안되어 있습니다. 빌드시에 파일을 포함하고 싶으면 아래이미지와 같이 솔루션 탐색기 항목에서 해당파일은 선택후 출력 디렉터리에 복사메뉴부분에 "새 버전이면 복사"항목을 선택합니다. 해당항목으로 선택후 다시 빌드를 하면 해당파일이 포함되어서 빌드되는 것을 확인 할수 있습니다.

프로그래밍/C# 2021.09.15
1 2 3 4