В моем приложении мне нужно было загрузить электронную таблицу Google Drive в виде файла CSV (значения, разделенные запятыми).На файлы Google Диска ссылаются длинные идентификаторы, такие как:
1uFwmwD5UFLdD1DMPGT5p4fIGozfImx44DNCOeMJr1Lo
Вот блок кода, который будет делать это.В случае ошибки метод вернет строку нулевой длины.
- (NSString *) downloadGoogleSheetGivenFileID: (NSString *) ID {
// This will download a Google spreadsheet given it's file ID
// and convert it to a CSV file.
NSString * preFix;
NSURL * myURL;
NSString * opCmd;
NSString * t;
NSString * theStuff;
NSError * error = nil;
theStuff = @"";
// The URL has to be: prefix+ID+opCmd The only thing that changes is the file's ID
preFix = @"https://spreadsheets.google.com/feeds/download/spreadsheets/Export?key=";
opCmd = @"&exportFormat=csv";
t = preFix;
t = [t stringByAppendingString:ID];
t = [t stringByAppendingString:opCmd];
myURL = [NSURL URLWithString:t];
theStuff = [NSString stringWithContentsOfURL:myURL encoding: NSUTF8StringEncoding error:&error];
if(error != nil)
{
// There was an error downloading the spread sheet file.
// We will return a zero length string.
NSLog(@"%@",error);
}
return theStuff;
}