Would probably use the numbered replacement format.  In english, your format 
string would be:

@"%...@... %...@... %...@..."

And in the other language, it'd be:

@"%...@... %...@... %...@..."

Then you'd use it like normal:

NSString * translated = [NSString stringWithFormat:format, value1, value2, 
value3];

We do this all over the place in an app I work on, and it works very very well.

HTH,

Dave

On Oct 1, 2010, at 4:12 PM, Jason Barker wrote:

> Hi everyone,
> 
> I'm working on an app with localized strings. I've got one string
> which contains placeholder values and depending upon the user's
> language settings, it should format the string with the values in a
> different order.
> For example, in English, the string would be formatted as: "...
> <value1> ... <value2> ... <value3> ...."
> In a different language, the string would be formatted as: "...
> <value2> ... <value1> ... <value3> ...."
> The values are all NSString objects. So far, this is what I've come up with:
> 
> NSString *value1 = @"ABCDEFG";
> NSString *value2 = @"1234567";
> NSString *value3 = @"HIJKLMNOP";
> NSMutableString *string = NSLocalizedString(@"MyStringIdentifier",
> @"");    /* Gets localized string with placeholders. */
> string = [string stringByReplacingOccurrencesOfString: @"<value1>"
> withString: value1];
> string = [string stringByReplacingOccurrencesOfString: @"<value2>"
> withString: value2];
> string = [string stringByReplacingOccurrencesOfString: @"<value3>"
> withString: value3];
> 
> Is there an elegant way to write this?
> 
> Thanks!
> Jason
> _______________________________________________
> 
> Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)
> 
> Please do not post admin requests or moderator comments to the list.
> Contact the moderators at cocoa-dev-admins(at)lists.apple.com
> 
> Help/Unsubscribe/Update your Subscription:
> http://lists.apple.com/mailman/options/cocoa-dev/davedelong%40me.com
> 
> This email sent to davedel...@me.com

Attachment: smime.p7s
Description: S/MIME cryptographic signature

_______________________________________________

Cocoa-dev mailing list (Cocoa-dev@lists.apple.com)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to