搜索了一下,没有发现这方面的问题。
我的应用程序采用 .csv 文件,切换数据并以我公司认为有用的方式将其吐出。问题是该程序似乎需要没有空格的文件名。例如,“My data.csv”将不起作用,但“My_data.csv”将起作用。这是我认为相关的代码
NSArray *allowedTypes = [NSArray arrayWithObjects:@"CSV",@"csv",nil];
openDLG = [NSOpenPanel openPanel];
[openDLG setDelegate:self];
[openDLG setCanChooseFiles:YES];
[openDLG setAllowedFileTypes:allowedTypes];
NSInteger openReturn = [openDLG runModal];
if (openReturn == NSFileHandlingPanelOKButton) {
NSArray *rawCSVs = [openDLG URLs];
NSEnumerator *enumerator = [rawCSVs objectEnumerator];
id object;
while ((object = [enumerator nextObject])) {
NSString *tempDump = [NSString stringWithContentsOfURL:object encoding:NSUTF8StringEncoding error:NULL];
NSArray *bigArray = [tempDump csvRows];
int total = [bigArray count];
....do other things
在调试模式下,“object”对于带有空格的文件名显示为 nil,“tempdump”字符串对于带有空格的文件名显示为@“nil”,但对于 names_with_underscores