Skip to content

Instantly share code, notes, and snippets.

@swarut
Created October 2, 2012 14:17
Show Gist options
  • Save swarut/3819484 to your computer and use it in GitHub Desktop.
Save swarut/3819484 to your computer and use it in GitHub Desktop.
Objective-C : StringHelper
#import "GlobalData.h"
#import "StringHelper.h"
@implementation StringHelper
+ (NSString*)costString:(NSString*)source{
NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
NSNumber *cost = [formatter numberFromString:source];
[formatter setNumberStyle:NSNumberFormatterDecimalStyle];
NSString * out = [[formatter stringFromNumber:cost] stringByAppendingString:@".-"];
return out;
}
+ (NSString*)dateString:(NSString*)source{
return [self dateString:source withTime:YES];
}
+ (NSString*)dateString:(NSString*)source withTime:(BOOL)enableTime{
NSArray *rawToken = [source componentsSeparatedByString:@" "];
NSArray *dateToken = [[rawToken objectAtIndex:0] componentsSeparatedByString:@"-"];
NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
NSNumber *day = [formatter numberFromString:[dateToken objectAtIndex:2]];
NSString *thaiMonth = [GlobalData stringForThaiMonth:[dateToken objectAtIndex:1]];
NSString *year = [dateToken objectAtIndex:0];
NSString *out;
if(enableTime){
NSArray *timeToken = [[rawToken objectAtIndex:1] componentsSeparatedByString:@":"];
out = [NSString stringWithFormat:@"%@ %@ %@ %@:%@", day, thaiMonth, year, [timeToken objectAtIndex:0], [timeToken objectAtIndex:1]];
}
else{
out = [NSString stringWithFormat:@"%@ %@ %@", day, thaiMonth, year];
}
return out;
}
+ (NSString*)imagePathStringWithSource:(NSString*) source{
return source;
}
+ (NSString*)UTF8DecodedString:(NSString*)source{
return [source stringByReplacingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
}
+ (NSString*)UTF8EncodedString:(NSString*)source{
return [source stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
}
+ (NSString*)SerialSplit:(NSString*)source with:(int)groupSize html:(BOOL)html_enable{
NSMutableString *out = [[NSMutableString alloc] initWithCapacity:[source length]];
for(int i = 0; i < source.length ; i++){
[out appendFormat:@"%c", [source characterAtIndex:i]];
if((i%4==3) && (i != source.length - 1)){
if(html_enable){
[out appendString:@"&nbsp;"];
}
else{
[out appendString:@" "];
}
}
}
return out;
}
+(NSString *)urlEncodeUsingEncoding:(NSStringEncoding)encoding withString:(NSString*) text{
__autoreleasing NSString *encodedString;
NSString *originalString = (NSString *)text;
encodedString = (__bridge_transfer NSString * )
CFURLCreateStringByAddingPercentEscapes(NULL,
(__bridge CFStringRef)originalString,
NULL,
(CFStringRef)@"!*'();:@&=+$,/?%#[]",
kCFStringEncodingUTF8);
return encodedString;
}
@end
#import <Foundation/Foundation.h>
@interface StringHelper : NSObject
+ (NSString*)costString:(NSString*)source;
+ (NSString*)dateString:(NSString*)source;
+ (NSString*)dateString:(NSString*)source withTime:(BOOL)enableTime;
+ (NSString*)imagePathStringWithSource:(NSString*) source;
+ (NSString*)UTF8DecodedString:(NSString*)source;
+ (NSString*)UTF8EncodedString:(NSString*)source;
+ (NSString*)SerialSplit:(NSString*)source with:(int)groupSize html:(BOOL)html_enable;
+ (NSString *)urlEncodeUsingEncoding:(NSStringEncoding)encoding withString:(NSString*) text;
@end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment