2011-06-15 2 views
3

나는 데이터베이스에서 다음 값을 얻고 포맷하는 방법 :데이터

99, 12, 12.2222, 54.98, 56,

17.556 지금 내가 보여주고 싶은 그 값 아래 같은 : 99 %, 12 %, 12.22 %, 54.98 %, 56 %, 17.55 %

이 사실을 알려주는 제안 사항을 알려주십시오.

+1

반환 값의 유형은 무엇입니까 ?? –

+0

u는 문자열을 쿼리에 직접 연결할 수도 있습니다. –

답변

4

그것의 C#에서 매우 쉽게 :

당신은 문자열 클래스의 Format 방법에 대한 좀 걸릴 수 있습니다

var val = 99.569; 
string result = string.Format("{0:0.##}%", val); 

[편집] :
http://msdn.microsoft.com/en-us/library/fht0f5be.aspx

나는 당신을 권 해드립니다 맞춤 형식 문자열을 살펴보십시오.
http://msdn.microsoft.com/en-us/library/0c899ak8.aspx

+0

val.ToString ("0.00") – Archibald

+0

@Archibald : 네, 맞습니다. 이 경우 우리는'00' 대신'##'을 사용해야합니다. –

+0

@Anton : OP는 또한 99 %에 대해 물어 보았습니다. 99 %가되어야하지만 99 %가 99.00 % – Vijjendra

2

원하는 형식이 "P2"또는 사용자 지정 형식 # 0. ## % 인 문자열 형식을 사용하는 ToString 메서드를 사용합니다. 이 두 형식 옵션은 모두 데이터를 표준 백분율 형식으로 예상하여 100을 곱한 값이므로 나누기 및 사용이 필요합니다.

나누기없이 ToString을 사용하려면 "# 0. ## \ %"를 사용하여 숫자 부분을 형식화하고 백분율 기호를 리터럴로 포함 시키십시오. 이것은 Anton Semenov의 답변 형식에서 ToString에 대한 호칭입니다 이 스레드에서 string.Format 함수. Msdn article - Standard Formats
Msdn article - Custom Formats

+1

"P"형식 문자열에 100을 곱한 것을 기억하십시오! –

+0

나는 잊었지만 위의 개정 작업을하고 있었다. 고맙습니다. – BellBat

0

2로 소수 자릿수를 지정하려면

(. 즉,하지 12.2222 % 만 12.22 %)를 선택한 다음 사용

val.ToString("0.00") + "%" 

참고이 있음 숫자를 반올림하므로 12.226은 12.23 % 등으로 표시됩니다.

1

toformart12.2222 use

string.Format("{0:f}%", 12.2222); //output 12,22% 
1

아웃이 시도

 List<double> myList = new List<double>(); 
     myList.Add(0.1234); 
     myList.Add(99); 
     myList.Add(12.1234); 
     myList.Add(54.98); 
     foreach (double d in myList) 
     { 
      string First = string.Format("{0:0.00%}", d); //Multiply value by 100 
      Console.WriteLine(First);      
      string Second = string.Format("{0:P}", d);//Multiply value by 100 
      Console.WriteLine(Second); 
      string Third = string.Format("{0:P}%", d.ToString());//Use this One 
      Console.WriteLine(Third); 
      string Four = d.ToString() + "%"; //Not a good idea but works 
      Console.WriteLine(Four); 
      Console.WriteLine("====================="); 
     } 

     Console.ReadLine(); 

내가 여기에 약간의 트릭 만든 : (100)하여 주어진 값을 곱 한 후 표시됩니다 {0 P}을하지만 당신은 단지 값 다음에 % 기호를 배치 할 그래서 먼저 {0 : p}를 적용하는 것보다 주어진 값을 TOString으로 변환하십시오.