본문으로 건너뛰기

태그 :: Golang

전체 70개

현재 윈도가 32비트인지 64비트 인지 확인

개발관련 GO언어(Golang)

Go언어는 개발하는 컴퓨터의 OS나 아키택처 상관 없이 다양한 플랫폼을 대상으로 실행파일 빌드가 가능합니다만. runtime 패키지의 GOARCH나 GOOS 등은 컴파일시에 해당 바이너리가 타겟으로 잡은 정보가 나올뿐 실제 현 시스템에 대한 정보를 대변하진 않습니다. 예를들어 64비트 …

Go언어로 윈도 서비스 어플리케이션 만들기

개발관련 GO언어(Golang)

최근에는 MS의 Visual Studio도 기본적으로 무료로 사용가능하지만.. 무료버전으로는 서비스 어플리케이션은 개발할 수가 없습니다. ( 물론 Professional 버전 등에서 관련 리소스들을 복사해와서 꼼수로 개발환경을 구성가능하기도 하지만 ㅎㅎ ) 여튼 .. Go로도 윈도 서 …

파일복사 함수

개발관련 GO언어(Golang)

기본적으로 파일을 이동시키거나 삭제하는 함수는 제공되고 있지만 복사의 경우 따로 구현을 해야 합니다. Go / * 파일 복사 함수 / func copyFile(srcFile string, destFile string) error { // 기존 파일이 있으면 삭제 if , err := …

간단한 파일 다운로드(HTTP GET)

개발관련 GO언어(Golang)

프로그래밍을 하다보면 HTTP GET방식으로 파일을 다운받아 저장해야할 일이 종종 있습니다. 그런떄 사용가능한 GET 방식의 간단한 파일 다운로드 예제입니다. Go func downloadFile(filepath string, url string) error { // Create …

CP949 <-> UTF-8 변환

개발관련 GO언어(Golang)

Go언어는 기본적으로 UTF-8을 인코딩으로 사용합니다만. 윈도의 경우 기본적으로 CP949 또는 UTF-16입니다. 한글 윈도를 설치한 경우에는 많은 경우에 CP949가 기본 인코딩인 경우가 대부분이라 exec 패키지 등으로 콘솔 명령어를 실행하고 결과를 받아서 사용하는 등의 경우에 …

MS윈도 파일또는 폴더를 휴지통으로 버리기

개발관련 GO언어(Golang)

윈도에서 프로그래밍을 하다보면 파일을 바로 삭제하는게 아닌 휴지통으로 이동시켜야 하는 경우가 생깁니다. os.Remove 같은 메소드를 이용하여 파일자체를 영구 삭제하는거야 매우 편하지만 .. 사용자를 대상으로 배포할 프로그램을 만드는 경우에는 가능하면 사용자의 실수도 감안하여 바로 …

TCP/IP 안쓰는 포트 얻기 - freeport

개발관련 GO언어(Golang)

서버 프로그램을 만들다 보면 가변포트를 사용해야 할 경우가 있습니다. 이런경우 시스템에 사용하고 있지 않은 포트를 얻어야 할때가 있는데요, 그런경우 사용가능한 패키지 입니다. GitHub - phayes/freeport: Get a free and open tcp port that …

JSON to GO

개발관련 GO언어(Golang)

Go로 JSON 데이터를 다루다 보면 .. map 을 이용해 Unmarshal 등을 해도 상관은 없지만. 이래저래 불편합니다. 그래서 보통은 구조체를 생성해서 처리를 합니다. 이때 JSON 구조가 단순하다면야 직접 struct 를 잡아서 작성하면 되지만 복잡한 구조의 JSON 데이터의 …

XML to GO

개발관련 GO언어(Golang)

JSON에 비해 XML의 경우 좀더 파싱이 복잡한 편이긴 합니다만. Go에서는 XML의 Marshal, Unmarshal도 지원을 하고 있습니다. 앞서 작성한 JSON to GO와 마찬가지로 XML의 경우도 구조체를 통해 처리하는 것이 여러모로 관리가 편합니다. xmltogo 이 사이 …

주사위 함수 (Dice, Random)

개발관련 GO언어(Golang)

구 CircleMud 현 tbaMud의 C로 작성된 dice 함수를 Go언어 코드로 작성한 함수입니다. tbaMud 라이선스는 아래 링크를 참고 바랍니다. LICENSE.md 과거에는 GPL 비슷한 라이선스로 봤었는데.. 일부 소스를 타 언어로 포팅한다던지 하는 경우에 오픈소스여야 한 …