ฉันใช้รหัสนี้:
NSString* strName = [NSString stringWithFormat:@"img_00%d.jpg", pp];
และใช้งานได้ดี แต่ถ้า pp รับค่าเป็น 10 เช่นฉันต้องการผลลัพธ์ img_010.jpg ไม่ใช่ img_0010.jpg ... ฉันจะจัดรูปแบบสตริงได้อย่างไร ??
ขอบคุณ
ฉันใช้รหัสนี้:
NSString* strName = [NSString stringWithFormat:@"img_00%d.jpg", pp];
และใช้งานได้ดี แต่ถ้า pp รับค่าเป็น 10 เช่นฉันต้องการผลลัพธ์ img_010.jpg ไม่ใช่ img_0010.jpg ... ฉันจะจัดรูปแบบสตริงได้อย่างไร ??
ขอบคุณ
คำตอบ:
ใช้สตริงรูปแบบ"img_%03d.jpg"
เพื่อรับตัวเลขทศนิยมที่มีสามหลักและเลขศูนย์นำหน้า
สำหรับลูกหลาน: สิ่งนี้ใช้ได้กับเลขฐานสิบ
NSString *nmbrStr = @"0033620340000" ;
NSDecimalNumber *theNum = [[NSDecimalNumber decimalNumberWithString:nmbrStr]decimalNumberByAdding: [NSDecimalNumber one]] ;
NSString *fmtStr = [NSString stringWithFormat:@"%012.0F",[theNum doubleValue]] ;
แม้ว่าข้อมูลนี้จะหายาก แต่ก็มีการบันทึกไว้ที่นี่ในย่อหน้าที่สองภายใต้พื้นฐานการจัดรูปแบบ มองหาอักขระ%
@"%07.2f"
@"%012.0F"
หมายถึงจำนวนหลักทั้งหมดรวมถึงจุดทศนิยมและอะไรก็ได้ทางด้านขวา