#define string = @"http://rtchubs.com/Client/PhotoStreamer/SaveRating.php?RateID=%@&&Rate=%@&&Photoid=%@"
如何將字符串轉換爲URL格式?如何將宏NSString轉換爲NSURL
#define string = @"http://rtchubs.com/Client/PhotoStreamer/SaveRating.php?RateID=%@&&Rate=%@&&Photoid=%@"
如何將字符串轉換爲URL格式?如何將宏NSString轉換爲NSURL
定義這些宏
#define STRING @"http://rtchubs.com/Client/PhotoStreamer/SaveRating.php?RateID=%@&&Rate=%@&&Photoid=%@"
#define URL_FROM_PARAMETER(_rateId_, _rate_, _photoId_) [NSURL URLWithString:[NSString stringWithFormat:STRING, _rateId_, _rate_, _photoId_]]
使用
id rateId = @"rateid", rate = @"rate",photoId = @"photoid";
NSURL *url = URL_FROM_PARAMETER(rateId, rate, photoId);
NSLog(@"%@", url);
輸出:
http://rtchubs.com/Client/PhotoStreamer/SaveRating.php?RateID=rateid&&Rate=rate&&Photoid=photoid
這是一個很好的答案,但是將這些東西寫入互聯網是違揹我的判斷的,因爲有些人可能真的開始以這種方式使用宏... :) – Sulthan 2014-08-31 11:58:12
我會考慮只產生一個純粹的輔助函數,你不必關注以及如何使用URL路徑在整個代碼庫中構建正確的URL。
// .h
extern NSURL *TLARateURL(NSString *rateID, NSString *rate, NSString *photoID);
// .c/m
NSURL *TLARateURL(NSString *rateID, NSString *rate, NSString *photoID) {
static NSString *format = @"http://rtchubs.com/Client/PhotoStreamer/SaveRating.php?RateID=%@&&Rate=%@&&Photoid=%@";
return [NSURL URLWithString:[NSString stringWithFormat:format, rateID, rate, photoID]];
}
是否需要轉換爲NSUrl? – 2014-08-31 09:47:10
@EmelElias是的,我想插入%@文字值到字符串 – 2014-08-31 09:53:15
爲什麼或爲什麼它必須是一個宏? – Sulthan 2014-08-31 10:32:25