[c#] 하이픈없이 GUID 생성

내 코드에서 다음 문을 사용하여 GUID를 생성하고 있습니다.

byte[ ] keyBytes = Encoding.UTF8.GetBytes( Guid.NewGuid( ).ToString( ).Substring( 0, 12 ) );

그러나 GUID가 생성되면 하이픈 문자도 포함되어 있습니다. 문자 (대문자 및 소문자)와 숫자만으로 GUID를 생성하려면 어떻게해야합니까? 나는 하이픈을 원하지 않습니다. 누군가 나에게 그렇게 생각할 수 있습니까?



답변

Guid의 (표준) 문자열 표현에 대해 이야기하고 있습니다. Guid 자체는 실제로 128 비트 정수 값입니다.

Guid.ToString(String)과부하 와 함께 “N”지정자를 사용할 수 있습니다 .

Guid.NewGuid().ToString("N");

기본적으로 문자는 소문자입니다. 대문자 만있는 Guid는 모두 대문자로 수동으로 변환해야만 얻을 수 있습니다. 예 :

Guid.NewGuid().ToString("N").ToUpper();

문자 나 숫자 만있는 GUID는 의미가 없습니다. guid 문자열 표현은 16 진수이므로 항상 둘 다 포함합니다.


답변

Guid.NewGuid().ToString().Replace("-", string.Empty)


답변