Tôi có NSInteger (nói với giá trị 60000), khi tôi chuyển đổi thành chuỗi, tuy nhiên, tôi muốn nhận "60.000" thay vì của "60000". Có một số phương pháp để làm điều đó? Cảm ơn.Số riêng biệt bằng dấu phẩy trên chuỗi iOS
Trả lời
Sử dụng một định dạng số:
NSNumberFormatter *fmt = [[NSNumberFormatter alloc] init];
[fmt setNumberStyle:NSNumberFormatterDecimalStyle]; // to get commas (or locale equivalent)
[fmt setMaximumFractionDigits:0]; // to avoid any decimal
NSInteger value = 60000;
NSString *result = [fmt stringFromNumber:@(value)];
Xin chào, cảm ơn bạn đã trả lời. Nó hoạt động. Hai câu hỏi nhỏ mặc dù. Tôi thấy điều này "địa phương" được đề cập tất cả các thời gian, nó là gì không? Và cũng có thể, trong cách tiếp cận của bạn, làm thế nào nó biết rằng nó nên đặt dấu phẩy sau mỗi 3 chữ số, thay vì 2 ví dụ? và cuối cùng, nó cũng sẽ hoạt động cho iOS4.3? Cảm ơn. – user1903992
Xem tài liệu cho 'NSLocale' để biết mô tả ngôn ngữ. Trong ngắn hạn nó đề cập đến ngôn ngữ và định dạng sự khác biệt trên toàn thế giới. Một số quốc gia sẽ hiển thị 600000 là 600.000. Một số sẽ hiển thị nó là 600.000 hoặc 600 000. Câu trả lời của tôi áp dụng cho tất cả các phiên bản iOS kể từ 2.0. Xem tài liệu cho 'NSNumberFormatter' - đặc biệt là những tài liệu liên quan đến nhóm. Mặc định là 3 chữ số. – rmaddy
Cảm ơn bạn đã trả lời. (Không thể gửi câu trả lời ngắn ở đây mặc dù :)). – user1903992
Hãy thử điều này,
NSString *numString = [NSString stringWithFormat:@"%d,%d",num/1000,num%1000];
Điều này không hợp lệ cho các ngôn ngữ sử dụng định dạng khác và nó sẽ không xử lý số lớn hơn (hoặc số nhỏ hơn). – rmaddy
@rmaddy Ok .. Cảm ơn và +1 cho câu trả lời của bạn ... :) –
Bạn có thể sử dụng một định dạng số:
NSNumberFormatter* numberFormatter = [[NSNumberFormatter alloc] init];
[numberFormatter setNumberStyle: NSNumberFormatterDecimalStyle];
NSString *numberString = [numberFormatter stringFromNumber: [NSNumber numberWithInteger: i]];
Sử dụng NSNumberFormatter
để định dạng dữ liệu số để một cục biểu diễn chuỗi.
int aNum = 60000;
NSString *display = [NSNumberFormatter localizedStringFromNumber:@(aNum)
numberStyle:NSNumberFormatterCurrencyStyle];
On làm điều này, bạn sẽ nhận được '$ 60,000.00'
sau đó, bạn có thể loại bỏ các dấu hiệu của sự và $ '' (thập phân) bằng cách làm này ..
NSString *Str = [display stringByReplacingOccurrencesOfString:@"$" withString:@""];
NSString *Str1 = [Str stringByReplacingOccurrencesOfString:@"." withString:@""];
NSString *newString = [Str1 substringToIndex:[Str1 length]-1];
NSString *newString1 = [newString substringToIndex:[newString length]-1];
'newString1' sẽ cung cấp cho bạn kết quả được yêu cầu.
Mã này quá phức tạp và sẽ thất bại trong nhiều trường hợp. Điều này sẽ không hoạt động đối với các ngôn ngữ sử dụng ký hiệu tiền tệ khác với '$'. Nó cũng không thành công cho các miền địa phương sử dụng dấu tách thập phân ngoài '.'. Nó cũng không thành công cho các ngôn ngữ không sử dụng 2 chữ số thập phân cho tiền tệ. – rmaddy
@rmaddy mã đó chỉ dành cho tình huống cụ thể này ..... –
Điều đó có nghĩa là gì? Tình huống gì? Bạn đang đề xuất rằng câu trả lời là viết toàn bộ mã để xử lý tất cả các ngôn ngữ khác nhau? – rmaddy
- 1. số riêng biệt bằng dấu phẩy với asp.net mvc
- 2. Emacs: chuyển đổi mục trên dòng riêng biệt vào một danh sách bằng dấu phẩy
- 3. Chuyển đổi chuỗi bằng dấu phẩy thành số nguyên
- 4. Tách chuỗi trên dấu phẩy nhưng bỏ qua dấu phẩy trong dấu ngoặc kép?
- 5. chuỗi bằng dấu phẩy để mảng
- 6. Javascript: Chia một chuỗi bằng dấu phẩy nhưng bỏ qua dấu phẩy trong dấu ngoặc kép
- 7. SQL dấu phẩy biệt danh
- 8. Thêm dấu phẩy vào chuỗi
- 9. Cách tách chuỗi bằng dấu phẩy bỏ dấu phẩy trong dấu ngoặc kép
- 10. thông số bằng dấu phẩy tách trong LaTeX
- 11. Tách chuỗi trên dấu phẩy khi dữ liệu có thể chứa dấu phẩy
- 12. PHP xóa dấu phẩy khỏi các chuỗi số
- 13. Regex cho số được phân tách bằng dấu phẩy
- 14. Tạo chuỗi phân cách bằng dấu phẩy C#?
- 15. Làm thế nào để chuyển đổi mảng thành chuỗi từ được tách biệt bằng dấu phẩy?
- 16. Python phân tích số bằng dấu phẩy vào int
- 17. Tạo dấu phẩy bằng MySQL?
- 18. Danh sách phân cách bằng dấu phẩy được phân cách bằng dấu phẩy
- 19. Cách định dạng số dấu phẩy động vào một chuỗi bằng cách sử dụng Go
- 20. Chuyển đổi phao để bằng dấu phẩy chuỗi
- 21. Chèn dấu phẩy vào số nguyên
- 22. Thay dấu chấm (.) Bằng dấu phẩy (,) bằng RegEx?
- 23. Sửa số dấu phẩy động
- 24. mysql chọn các hàng riêng biệt thành một cột danh sách được phân tách bằng dấu phẩy
- 25. split chuỗi phân cách bằng dấu phẩy và dấu bằng trong php với thoát
- 26. Số được phân tách bằng dấu phẩy Regex
- 27. riêng từng giá trị bằng dấu phẩy từ nhiều lựa chọn
- 28. Đúc chuỗi phân cách bằng dấu phẩy thành số nguyên được sử dụng trong "IN" SQL
- 29. Dấu chấm phẩy trên jQuery
- 30. Làm cách nào để chuyển đổi một số thành chuỗi được định dạng bằng dấu phẩy, được phân tách bằng dấu phẩy?
được sao chép bằng http://stackoverflow.com/questions/2233824/how-to-add-commas-to-number-every-3-digits-in-objective-c – Nazir