int 값이 10 미만이면 문자열 두 자리 숫자로 변환됩니다.
string strI;
for (int i = 1; i < 100; i++)
strI = i.ToString();
여기서, 만약에i = 1
그리고나서ToString
수확량"1"
하지만 나는 얻고 싶습니다."01"
또는"001"
꽤 쉬워 보이지만, 여기에 대한 기사만 있습니다.
datetime.ToString("yyyy-MM-dd")`
i.ToString("00")
또는
i.ToString("000")
당신이 원하는 것에 따라
추가 옵션은 사용자 지정 숫자 형식 문자열에 대한 MSDN 문서를 참조하십시오. http://msdn.microsoft.com/en-us/library/0c899ak8(VS.71).aspx
아무도 이런 제안을 하지 않았다니 믿을 수 없습니다.
int i = 9;
i.ToString("D2"); // Will give you the string "09"
또는
i.ToString("D8"); // Will give you the string "00000009"
16진수를 원하는 경우:
byte b = 255;
b.ToString("X2"); // Will give you the string "FF"
통화 기호를 로케일할 경우 "C"만 사용하여 통화로 표시할 수도 있습니다.다음을 참조하십시오. https://learn.microsoft.com/en-us/dotnet/api/system.int32.tostring?view=netframework-4.7.2#System_Int32_ToString_System_String_
승인된 답변은 훌륭하고 빠릅니다.
i.ToString("00")
또는
i.ToString("000")
복잡성이 더 필요하면 String.포맷은 시도해 볼 가치가 있습니다.
var str1 = "";
var str2 = "";
for (int i = 1; i < 100; i++)
{
str1 = String.Format("{0:00}", i);
str2 = String.Format("{0:000}", i);
}
를 위해i = 10
대/소문자:
str1: "10"
str2: "010"
예를 들어, 양식의 특정 레이블 컨트롤에 있는 텍스트를 이름으로 지우는 데 사용합니다.
private void EmptyLabelArray()
{
var fmt = "Label_Row{0:00}_Col{0:00}";
for (var rowIndex = 0; rowIndex < 100; rowIndex++)
{
for (var colIndex = 0; colIndex < 100; colIndex++)
{
var lblName = String.Format(fmt, rowIndex, colIndex);
foreach (var ctrl in this.Controls)
{
var lbl = ctrl as Label;
if ((lbl != null) && (lbl.Name == lblName))
{
lbl.Text = null;
}
}
}
}
}
ToString 형식을 사용할 수 있습니다.시도:
i.ToString("000");
이 블로그 게시물은 문자열을 다양한 형식으로 포맷하려고 할 때 유용하게 보관할 수 있는 훌륭한 작은 속임수입니다.
트로이 목마에 대한 링크가 제거됨
편집
Google이 일시적으로 해당 사이트(또는 관련 사이트)가 악성 소프트웨어를 유포하고 있을 수 있다고 경고했기 때문에 링크가 제거되었습니다.이제 더 이상 문제가 없는 것으로 보고되지 않습니다.Google "SteveX String Formatting" 검색 결과를 확인할 수 있으며 자유롭게 방문할 수 있습니다.
작성 당시에는 기출문제가 대부분 완벽하게 좋은 답변이었다고 답변을 시작하겠습니다.그래서 써주신 분들께 감사드립니다.
이제 동일한 솔루션에 문자열 보간을 사용할 수도 있습니다.
편집: Heretic Monkey로부터 완벽하게 유효한 건설적인 코멘트를 받은 후 이 설명을 추가합니다.저는 사용하는 것을 선호해 왔습니다.ToString 정수를 문자열로 변환해야 할 때마다 결과를 다른 문자열에 추가하지 않습니다.또한 아래 예시와 같이 문자열과 정수를 결합해야 할 때마다 보간법을 사용하는 것을 선호했습니다.
i.ToString("00")
01
i.ToString("000")
001
i.ToString("0000")
0001
$"Prefix_{i:00}"
Prefix_01
$"Prefix_{i:000}"
Prefix_001
$"Prefix_{i:0000}_Suffix"
Prefix_0001_Suffix
이 방법으로도 할 수 있습니다.
private static string GetPaddingSequence(int padding)
{
StringBuilder SB = new StringBuilder();
for (int i = 0; i < padding; i++)
{
SB.Append("0");
}
return SB.ToString();
}
public static string FormatNumber(int number, int padding)
{
return number.ToString(GetPaddingSequence(padding));
}
마지막으로 FormatNumber 함수 호출
string x = FormatNumber(1,2);
출력은 패딩 매개 변수를 기준으로 01이 됩니다.이 값을 늘리면 0개의 수가 증가합니다.
언급URL : https://stackoverflow.com/questions/2947675/int-value-under-10-convert-to-string-two-digit-number
'programing' 카테고리의 다른 글
Info.plist에서 버전 읽기 (0) | 2023.08.07 |
---|---|
트랜잭션 로그 없이 SQL 서버 DB 복원 (0) | 2023.08.07 |
jQuery 및 AJAX의 SSL 인증서 무시 오류 (0) | 2023.08.07 |
범위 검색 대 고유 검색 대 건너뛰기 검색 (0) | 2023.08.07 |
MYSQL - 날짜/초 (0) | 2023.08.07 |