728x90
300x250
[C#.NET] Base64

Base64는?

컴퓨터 분야에서 쓰이는 Base 64 (베이스 육십사)란 8비트 이진 데이터(예를 들어 실행 파일이나, ZIP 파일 등)를 문자 코드에 영향을 받지 않는 공통 ASCII 영역의 문자들로만 이루어진 일련의 문자열로 바꾸는 인코딩 방식을 가리키는 개념이다.

원래 Base 64를 글자 그대로 번역하여 보면 64진법이란 뜻이다. 특별히 64진법이 컴퓨터에서 흥미로운 것은, 64가 2의 제곱수(64 = 26)이며, 2의 제곱수들에 기반한 진법들 중에서 화면에 표시되는 ASCII 문자들을 써서 표현할 수 있는 가장 큰 진법이기 때문이다. 즉, 다음 제곱수인 128진법에는 128개의 기호가 필요한데 화면에 표시되는 ASCII 문자들은 128개가 되지 않는다.

그런 까닭에 이 인코딩은 전자 메일을 통한 이진 데이터 전송 등에 많이 쓰이고 있다. Base 64에는 어떤 문자와 기호를 쓰느냐에 따라 여러 변종이 있지만, 잘 알려진 것은 모두 처음 62개는 알파벳 A-Z, a-z와 0-9를 사용하고 있으며 마지막 두 개를 어떤 기호를 쓰느냐의 차이만 있다.


출처 : Wikipedia

Base64는 이메일이나 SMS와 같은 데에서 많이 사용되고 있다고 합니다.



1. 소스 코드


        static void Main()
        {
            string str = "도도";
            str = EncodeTo64(str);
            Console.WriteLine(str);
            str = DecodeFrom64(str);
            Console.WriteLine(str);
        }
        public static string EncodeTo64(string toEncode)
        {
            byte[] toEncodeAsBytes = System.Text.Encoding.Unicode.GetBytes(toEncode);
            string returnValue = System.Convert.ToBase64String(toEncodeAsBytes);
            return returnValue;
        }
        public static string DecodeFrom64(string encodedData)
        {
            byte[] encodedDataAsBytes = System.Convert.FromBase64String(encodedData);
            string returnValue = System.Text.Encoding.Unicode.GetString(encodedDataAsBytes);
            return returnValue;
        }
}

출력 결과


[첨부(Attachment)]

101223_C#_Base64_example.7z

 

반응형
728x90
300x250

[PC 활용] Visual Studio.NET 프로젝트의 소스 관리(SVNversion) - Visual SVN, AnkhSVN

SVNVersion은 쉽게 표현하자면 소스관리를 의미합니다.
Visual Studio.NET에서 소스 관리하는 방법에 대해서 소개합니다.


1. Visual SVN 서버 설치

[첨부(Attachment)]
VisualSVN-Server-2.1.5.msi

 

VisualSVN은 개인용 버전(Standard Edition)은 무료입니다.
이 프로그램은 Apache 2.2와 SSL을 연동하고 있습니다.
자세한 기술 문의는 VisualSVN 홈페이지를 참고하시면 됩니다.

http://www.visualsvn.com
정식 버전은 49.99달러 입니다.


2. AnkhSVN 클라이언트 for Visual Studio.NET 2010

[첨부(Attachment)]
AnkhSvn-2.1.8420.8.msi



http://ankhsvn.open.collab.net 공식 홈페이지

 

반응형
728x90
300x250

[C#.NET] 클래스 - 부모와 자녀의 파라메터 값을 중복 허용

만약 부모와 자녀가 갖고 있는 공통의 값이 예를 들자면 핸드폰이 있다고 칩시다.
cel이라는 파라메터가 둘 다 필요하게 될 것입니다.
자녀는 부모 없이 존재가능한가요?
즉 다시말하면 부모와 자녀와의 관계에서 공통적으로 갖는 특색이 중복되어야만 할 상황이 생길 때 해결하는 방법입니다.


1. 기본 클래스 방법(New 클래스를 이용)

이 예제에서 기본 클래스 BaseC 및 파생 클래스 DerivedC는 동일한 필드 이름 x를 사용하므로 상속된 필드의 값이 숨겨집니다.
이 예제는 new 한정자의 사용법을 보여 줍니다. 또한 정규화된 이름을 사용하여 기본 클래스의 숨겨진 멤버에 액세스하는 방법을 보여 줍니다.

using System;
public class BaseC
{
    public static int x = 55;
    public static int y = 22;
}
public class DerivedC : BaseC
{
    new public static int x = 100;
    static void Main()
    {
        Console.WriteLine(x);
        Console.WriteLine(BaseC.x);
        Console.WriteLine(y);
    }
}

100
55
22

이 예제에서 중첩 클래스는 기본 클래스에서 이름이 동일한 클래스를 숨깁니다. 이 예제에서는 new 한정자를 사용하여 경고 메시지를 제거하고 정규화된 이름을 사용하여 숨겨진 클래스 멤버에 액세스하는 방법을 보여 줍니다.


using System;
public class BaseC
{
    public class NestedC
    {
        public int x = 200;
        public int y;
    }
}
public class DerivedC : BaseC
{
    new public class NestedC
    {
        public int x = 100;
        public int y;
    }
    static void Main()
    {
        NestedC c1 = new NestedC();
        BaseC.NestedC c2 = new BaseC.NestedC();
        Console.WriteLine(c1.x);
        Console.WriteLine(c2.x);
    }
}

출력 : 100
         200



2. Virtual 선언과 Overide 이용


using System;

class Player
{
    virtual public void showMessage()
    {
        Console.WriteLine("Player 클래스의 메시지");
    }
}

class StarcraftPlayer : Player
{
    public override void showMessage()
    {
        Console.WriteLine("StarcraftPlayer");
    }
}

class Program
{
    static void Main()
    {
        StarcraftPlayer sp = new StarcraftPlayer();
        sp.showMessage();
        Player p = new Player();
        p.showMessage();
    }
}


반응형

'소프트웨어(SW) > MS - Visual C#.NET' 카테고리의 다른 글

[C#.NET] Base64  (0) 2010.12.22
[C#.NET] 클래스 - Overriding 개념  (0) 2010.11.24
[C#.NET] Out과 Ref의 차이점  (0) 2010.11.19
[C#.NET] foreach 문  (0) 2010.11.17
[C#.NET] 구조체 설명  (0) 2010.11.17
728x90
300x250

[PC 활용] SAP Crystal Reports for Visual Studio 2010

이번에 소개할 글은 C#에서 SAP의 크리스탈 리포트를 비주얼 스튜디오 2010에서 사용하는 방법에 대해서 소개합니다.


1. 설치 / 사용방법


그림 1-1. Visual Studio 라이브러리, SAP

Start Your Free Download 클릭

그림 1-2. Visual Studio 버전에 맞는 크리스탈리포트 선택, SAP

해당 필요한 도구를 선택하여 설치합니다.

그림 1-3. 새 프로젝트, Visual Studio 2010

새 프로젝트를 보면 Crystal Reports에 관한 항목은 그대로이지만 기능은 대폭 강화되었습니다.

그림 1-4. 크리스탈리포트(SAP Crystal Report), Visual Studio 2010


2. 참고자료(Reference)

 

1. SAP Crystal Reports for Visual Studio 2010, http://www.businessobjects.com/jump/xi/crvs2010/default.asp, Acessed by 2010-11-20


 

반응형

+ Recent posts