objective-c - للدرجات - كيفية حساب النسبة المئوية بين رقمين




كيفية إضافة علامة النسبة المئوية إلى NSString (5)

أرغب في الحصول على علامة النسبة المئوية في السلسلة الخاصة بي بعد رقم. شيء من هذا القبيل: 75 ٪.

كيف يمكنني القيام بذلك؟ حاولت:

[NSString stringWithFormat:@"%d\%", someDigit];

لكنها لم تنجح بالنسبة لي.


iOS 9.2.1 ، Xcode 7.2.1 ، تمكين ARC

يمكنك دائمًا إلحاق "٪" بنفسه دون أي محددات أخرى للتنسيق في السلسلة التي تقوم بإلحاقها ، مثل ذلك ...

int test = 10;

NSString *stringTest = [NSString stringWithFormat:@"%d", test];
stringTest = [stringTest stringByAppendingString:@"%"];
NSLog(@"%@", stringTest);

ل iOS7.0 +

لتوسيع الإجابة للأحرف الأخرى التي قد تسبب لك تعارضًا ، يمكنك اختيار ما يلي:

- (NSString *)stringByAddingPercentEncodingWithAllowedCharacters:(NSCharacterSet *)allowedCharacters

خطوة خطوة بخطوة يبدو مثل هذا:

int test = 10;

NSString *stringTest = [NSString stringWithFormat:@"%d", test];
stringTest = [[stringTest stringByAppendingString:@"%"] 
             stringByAddingPercentEncodingWithAllowedCharacters:
             [NSCharacterSet alphanumericCharacterSet]];
stringTest = [stringTest stringByRemovingPercentEncoding];

NSLog(@"percent value of test: %@", stringTest);

أو قصيرة اليد:

NSLog(@"percent value of test: %@", [[[[NSString stringWithFormat:@"%d", test] 
stringByAppendingString:@"%"] stringByAddingPercentEncodingWithAllowedCharacters:
[NSCharacterSet alphanumericCharacterSet]] stringByRemovingPercentEncoding]);

شكرا لجميع المساهمين الأصليين. أتمنى أن يساعدك هذا. في صحتك!


uese بعد الكود.

 NSString *searchText = @"Bhupi"
 NSString *formatedSearchText = [NSString stringWithFormat:@"%%%@%%",searchText];

سوف الناتج: ٪ بوبي ٪


رمز النسبة المئوية لتسجيل الدخول بتنسيق NSString هو %% . وينطبق ذلك أيضًا على NSLog() و printf() .


رمز الهروب لعلامة النسبة المئوية هو "٪٪" ، لذلك ستبدو شفرتك كالتالي

[NSString stringWithFormat:@"%d%%", someDigit];

أيضا ، يمكن العثور على جميع محددات الأشكال الأخرى في مقالات السلاسل المفاهيمية


يبدو إذا كان %% متبوعًا بـ %@ ، فإن NSString سيذهب إلى بعض الرموز الغريبة التي تحاول إجراء ذلك وهذا مفيد بالنسبة لي

NSString *str = [NSString stringWithFormat:@"%@%@%@", @"%%", 
                 [textfield text], @"%%"]; 




string-literals